diff --git a/Dockerfile b/Dockerfile index 97d2ccf2e7..4d9443971e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,4 @@ -FROM tgstation/byond:512.1448 as base -#above version must be the same as the one in dependencies.sh +FROM tgstation/byond:512.1453 as base FROM base as build_base diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index b257fb10d3..c4da3f1e32 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -250,6 +250,7 @@ /obj/machinery/light{ dir = 4 }, +/obj/machinery/cryopod, /turf/open/floor/plasteel, /area/security/prison) "aaH" = ( @@ -25289,10 +25290,6 @@ /turf/open/floor/plasteel/white, /area/medical/chemistry) "bio" = ( -/obj/structure/table/glass, -/obj/item/reagent_containers/glass/bottle/epinephrine, -/obj/item/stack/sheet/mineral/plasma, -/obj/item/stack/sheet/mineral/plasma, /obj/machinery/requests_console{ department = "Chemistry"; departmentType = 2; @@ -25302,6 +25299,7 @@ /obj/machinery/light{ dir = 8 }, +/obj/structure/closet/secure_closet/chemical, /turf/open/floor/plasteel/white, /area/medical/chemistry) "bip" = ( @@ -27162,6 +27160,9 @@ }, /obj/item/stack/cable_coil/random, /obj/item/stack/cable_coil/random, +/obj/item/stack/sheet/mineral/plasma, +/obj/item/stack/sheet/mineral/plasma, +/obj/item/reagent_containers/glass/bottle/epinephrine, /turf/open/floor/plasteel/white, /area/medical/chemistry) "bmG" = ( diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index a30ed30baf..23c41131ea 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -18861,6 +18861,7 @@ /obj/effect/turf_decal/tile/red{ dir = 1 }, +/obj/machinery/cryopod, /turf/open/floor/plasteel, /area/security/prison) "aMl" = ( diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 0dedc3a06d..c24244dcea 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -911,6 +911,7 @@ dir = 8; pixel_x = 24 }, +/obj/machinery/cryopod, /turf/open/floor/plasteel, /area/security/prison) "acy" = ( @@ -13126,7 +13127,6 @@ /area/quartermaster/miningoffice) "azl" = ( /obj/structure/closet/emcloset, -/obj/machinery/status_display/supply, /obj/effect/turf_decal/tile/brown{ dir = 1 }, @@ -22865,7 +22865,6 @@ /obj/structure/disposalpipe/trunk{ dir = 8 }, -/obj/machinery/status_display/supply, /obj/effect/turf_decal/stripes/line{ dir = 4 }, @@ -30386,7 +30385,6 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "bgL" = ( -/obj/machinery/status_display/supply, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -83777,6 +83775,10 @@ /obj/structure/table/reinforced, /turf/open/floor/plasteel/white, /area/science/circuit) +"omz" = ( +/obj/machinery/status_display/supply, +/turf/closed/wall, +/area/quartermaster/sorting) "oub" = ( /obj/structure/sign/poster/official/random, /turf/closed/wall, @@ -83963,6 +83965,10 @@ }, /turf/open/floor/plasteel/white, /area/science/lab) +"rMS" = ( +/obj/machinery/status_display/supply, +/turf/closed/wall, +/area/quartermaster/miningoffice) "rQK" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -84094,6 +84100,10 @@ "urv" = ( /turf/closed/wall/mineral/plastitanium, /area/security/prison) +"usx" = ( +/obj/machinery/status_display/supply, +/turf/closed/wall, +/area/security/checkpoint/supply) "uun" = ( /obj/machinery/vending/assist, /turf/open/floor/plasteel, @@ -101132,7 +101142,7 @@ dne dne dne dne -ayj +rMS azl aAE aAE @@ -102698,7 +102708,7 @@ aMv bar dmF bdi -dmF +omz bgL biI bkl @@ -103975,7 +103985,7 @@ aNN aPg aQp aQp -aSX +usx aSX aVM aXm diff --git a/_maps/map_files/PubbyStation/PubbyStation.dmm b/_maps/map_files/PubbyStation/PubbyStation.dmm index 3823a803c9..2ba47f19eb 100644 --- a/_maps/map_files/PubbyStation/PubbyStation.dmm +++ b/_maps/map_files/PubbyStation/PubbyStation.dmm @@ -1685,8 +1685,11 @@ /obj/machinery/light/small{ dir = 1 }, -/obj/structure/window/reinforced{ - dir = 8 +/obj/machinery/door/window/westleft{ + base_state = "right"; + dir = 8; + icon_state = "right"; + name = "Unisex Showers" }, /turf/open/floor/plasteel/freezer, /area/security/prison) @@ -1757,12 +1760,9 @@ /turf/open/floor/plasteel/dark, /area/security/prison) "ago" = ( -/obj/machinery/door/window/westleft{ - base_state = "right"; +/obj/structure/window/reinforced{ dir = 8; - icon_state = "right"; - name = "Unisex Showers"; - req_access_txt = "0" + layer = 2.9 }, /turf/open/floor/plasteel/freezer, /area/security/prison) @@ -15941,7 +15941,6 @@ id = "packageSort2" }, /obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/status_display/supply, /turf/open/floor/plating, /area/quartermaster/sorting) "aMj" = ( @@ -18864,14 +18863,6 @@ }, /turf/open/floor/plating, /area/quartermaster/storage) -"aTo" = ( -/obj/machinery/status_display/supply, -/obj/machinery/conveyor{ - dir = 4; - id = "QMLoad" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) "aTp" = ( /obj/structure/sign/poster/official/random{ pixel_y = 32 @@ -20325,7 +20316,6 @@ /turf/open/floor/plasteel/dark, /area/quartermaster/office) "aWw" = ( -/obj/machinery/status_display/supply, /obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ dir = 4 @@ -24102,7 +24092,6 @@ /turf/closed/wall, /area/science/robotics/mechbay) "beJ" = ( -/obj/machinery/status_display/ai, /obj/structure/filingcabinet, /obj/effect/turf_decal/tile/brown{ dir = 1 @@ -53594,6 +53583,10 @@ }, /turf/open/floor/plasteel/dark, /area/chapel/office) +"dps" = ( +/obj/machinery/status_display/ai, +/turf/closed/wall, +/area/quartermaster/qm) "dqw" = ( /obj/machinery/door/airlock/maintenance{ req_access_txt = "0"; @@ -53860,13 +53853,10 @@ /obj/structure/chair/office/light, /turf/open/floor/plasteel/white, /area/science/xenobiology) -"eeF" = ( -/obj/effect/turf_decal/tile/purple, -/obj/effect/turf_decal/tile/purple{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) +"eex" = ( +/obj/machinery/status_display/supply, +/turf/closed/wall, +/area/quartermaster/office) "eeQ" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -56024,6 +56014,10 @@ /obj/item/stack/ore/iron, /turf/open/floor/plating, /area/maintenance/department/science) +"jXF" = ( +/obj/machinery/cryopod, +/turf/open/floor/plasteel/dark, +/area/security/prison) "jXV" = ( /obj/machinery/light/small{ dir = 1 @@ -56110,6 +56104,10 @@ icon_state = "platingdmg3" }, /area/maintenance/department/science) +"klb" = ( +/obj/machinery/status_display/supply, +/turf/closed/wall, +/area/quartermaster/sorting) "klo" = ( /obj/structure/dresser, /obj/structure/mirror{ @@ -56550,13 +56548,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel/dark, /area/library/lounge) -"ltE" = ( -/obj/effect/turf_decal/tile/purple, -/obj/effect/turf_decal/tile/purple{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) "lzJ" = ( /obj/structure/closet/crate/bin, /turf/open/floor/carpet, @@ -59742,6 +59733,10 @@ }, /turf/open/floor/plasteel, /area/science/lab) +"tLP" = ( +/obj/machinery/status_display/supply, +/turf/closed/wall, +/area/quartermaster/warehouse) "tPm" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -82814,7 +82809,7 @@ lGp aeU afI aeU -aeU +jXF agy agN agY @@ -94189,13 +94184,13 @@ aGV blu aDZ aDZ -eeF +bjm mhn -ltE -ltE -ltE -ltE -ltE +cqi +cqi +cqi +cqi +cqi imE kYM bmC @@ -99300,7 +99295,7 @@ aHn aIi aJi aKe -lAs +klb aMi aNJ fwl @@ -100338,7 +100333,7 @@ lAs eeQ aUs aLf -aLf +eex aLf aLf aUl @@ -100603,7 +100598,7 @@ aTm bbE bbE bbE -bbE +dps bbE bbE aEj @@ -102133,8 +102128,8 @@ aNP aPb aNO aNP -cDa -aTo +tLP +aTq aSk aTm aTm diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm index 86c788427d..14d16fe659 100644 --- a/_maps/map_files/generic/CentCom.dmm +++ b/_maps/map_files/generic/CentCom.dmm @@ -3820,6 +3820,14 @@ /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/centcom/supply) +"jO" = ( +/obj/structure/table, +/obj/item/gun/energy/ionrifle, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/syndicate_mothership) "jP" = ( /obj/machinery/conveyor_switch/oneway{ dir = 8; @@ -4184,16 +4192,8 @@ /turf/open/floor/plating/asteroid/snow/airless, /area/syndicate_mothership) "ku" = ( -/turf/closed/indestructible/riveted, -/area/syndicate_mothership/control) -"kv" = ( -/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) +/turf/closed/indestructible/fakeglass, +/area/syndicate_mothership) "kw" = ( /turf/open/floor/plasteel/yellowsiding, /area/centcom/supply) @@ -4364,12 +4364,6 @@ icon_state = "alien19" }, /area/abductor_ship) -"kR" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating, -/area/syndicate_mothership/control) "kS" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -4537,13 +4531,6 @@ icon_state = "alien15" }, /area/abductor_ship) -"ll" = ( -/turf/open/floor/plating, -/area/syndicate_mothership/control) -"lm" = ( -/obj/machinery/light, -/turf/open/floor/plating, -/area/syndicate_mothership/control) "ln" = ( /obj/machinery/light, /obj/effect/turf_decal/tile/brown, @@ -4865,14 +4852,6 @@ icon_state = "alien11" }, /area/abductor_ship) -"ma" = ( -/obj/structure/flora/grass/both, -/obj/effect/light_emitter{ - set_cap = 1; - set_luminosity = 4 - }, -/turf/open/floor/plating/asteroid/snow/airless, -/area/syndicate_mothership) "mb" = ( /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/neutral{ @@ -5125,14 +5104,6 @@ /obj/effect/baseturf_helper/asteroid/snow, /turf/closed/indestructible/rock/snow, /area/syndicate_mothership) -"mC" = ( -/obj/item/disk/data, -/obj/effect/light_emitter{ - set_cap = 1; - set_luminosity = 4 - }, -/turf/open/floor/plating/asteroid/snow/airless, -/area/syndicate_mothership) "mD" = ( /turf/closed/indestructible/riveted, /area/centcom/ferry) @@ -5425,18 +5396,6 @@ icon_state = "alien5" }, /area/abductor_ship) -"ng" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/indestructible/riveted, -/area/syndicate_mothership/control) -"nh" = ( -/obj/item/toy/figure/syndie, -/obj/effect/light_emitter{ - set_cap = 1; - set_luminosity = 4 - }, -/turf/open/floor/plating/asteroid/snow/airless, -/area/syndicate_mothership) "ni" = ( /obj/machinery/newscaster/security_unit, /turf/closed/indestructible/riveted, @@ -5608,15 +5567,13 @@ /obj/structure/flora/bush, /turf/open/floor/plating/asteroid/snow/airless, /area/syndicate_mothership) -"ny" = ( -/obj/machinery/light{ +"nz" = ( +/obj/machinery/light/small{ + brightness = 3; dir = 8 }, /turf/open/floor/plating, -/area/syndicate_mothership/control) -"nz" = ( -/turf/closed/indestructible/fakeglass, -/area/syndicate_mothership/control) +/area/syndicate_mothership) "nA" = ( /obj/structure/sign/warning/nosmoking, /turf/closed/indestructible/riveted, @@ -6448,14 +6405,59 @@ }, /turf/open/floor/plasteel/dark, /area/centcom/control) -"oW" = ( -/obj/structure/flora/bush, -/obj/effect/light_emitter{ - set_cap = 1; - set_luminosity = 4 +"oS" = ( +/obj/structure/table/wood, +/obj/machinery/chem_dispenser/drinks/beer{ + dir = 8 }, -/turf/open/floor/plating/asteroid/snow/airless, -/area/syndicate_mothership) +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/tdome/tdomeobserve) +"oT" = ( +/obj/structure/table/wood, +/obj/machinery/chem_dispenser/drinks{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/tdome/tdomeobserve) +"oU" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/two) +"oV" = ( +/obj/machinery/vr_sleeper{ + dir = 4 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/wood, +/area/centcom/holding) "oX" = ( /obj/structure/bookcase/random, /obj/machinery/light{ @@ -6798,45 +6800,35 @@ }, /turf/open/floor/plasteel/dark, /area/centcom/control) -"px" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/rack, -/obj/item/nullrod/claymore/saber/red{ - damtype = "stamina"; - force = 30 - }, -/turf/open/floor/wood, -/area/centcom/holding) "py" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 4 +/obj/machinery/smartfridge, +/turf/closed/indestructible{ + icon = 'icons/turf/walls/wood_wall.dmi'; + icon_state = "wood"; + smooth = 1 }, -/obj/effect/turf_decal/tile/brown{ +/area/centcom/holding) +"pz" = ( +/obj/machinery/door/airlock/centcom{ + name = "CentCom Supply"; + req_access_txt = "106" + }, +/turf/open/floor/plasteel/dark, +/area/centcom/supplypod) +"pE" = ( +/obj/machinery/plantgenes/seedvault, +/obj/effect/turf_decal/tile/green{ dir = 1 }, -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"pz" = ( -/turf/open/floor/plasteel, -/area/centcom/supplypod/podStorage) -"pF" = ( -/obj/machinery/door/airlock/centcom{ - name = "Auxillary Dock"; - opacity = 1; - req_access_txt = "" +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 }, -/turf/open/floor/plating, -/area/syndicate_mothership/control) -"pG" = ( -/obj/structure/flora/tree/pine, -/obj/effect/light_emitter{ - set_cap = 1; - set_luminosity = 4 +/obj/effect/turf_decal/tile/green{ + dir = 8 }, -/turf/open/floor/plating/asteroid/snow/airless, -/area/syndicate_mothership) +/turf/open/floor/plasteel/white, +/area/centcom/holding) "pH" = ( /obj/structure/table/wood, /obj/machinery/recharger, @@ -6969,59 +6961,44 @@ }, /turf/open/floor/plasteel/dark, /area/centcom/ferry) +"pS" = ( +/obj/structure/table, +/obj/item/stack/packageWrap, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) "pU" = ( +/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/reagent_containers/food/drinks/bottle/gin, +/turf/open/floor/wood, +/area/syndicate_mothership) +"pV" = ( /obj/machinery/light{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ dir = 4 }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, +/turf/open/floor/plasteel/cafeteria, /area/centcom/holding) "pW" = ( -/obj/machinery/vr_sleeper{ - dir = 1 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"pX" = ( -/obj/item/storage/crayons, -/obj/structure/table, -/obj/item/storage/crayons, -/turf/open/floor/plasteel/freezer{ - dir = 2 - }, -/area/syndicate_mothership/control) -"pY" = ( +/obj/effect/landmark/ai_multicam_room, +/turf/open/ai_visible, +/area/ai_multicam_room) +"pZ" = ( /obj/machinery/washing_machine, /turf/open/floor/plasteel/freezer{ dir = 2 }, -/area/syndicate_mothership/control) -"pZ" = ( -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) +/area/syndicate_mothership) "qa" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) +/obj/structure/flora/tree/pine, +/obj/effect/light_emitter, +/turf/open/floor/plating/asteroid/snow/airless, +/area/syndicate_mothership) "qb" = ( /obj/structure/table/wood, /obj/item/folder/red, @@ -7356,76 +7333,15 @@ "qE" = ( /turf/closed/indestructible/riveted/uranium, /area/wizard_station) -"qG" = ( -/mob/living/simple_animal/cow, -/turf/open/floor/grass, -/area/centcom/holding) "qI" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"qJ" = ( -/obj/machinery/computer/shuttle/syndicate/recall, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"qK" = ( -/obj/machinery/vending/coffee, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"qL" = ( -/obj/machinery/vending/cola, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"qM" = ( -/obj/machinery/vending/cigarette/syndicate, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"qN" = ( -/obj/structure/urinal{ - pixel_y = 28 - }, -/turf/open/floor/plasteel/freezer{ +/obj/effect/turf_decal/stripes/line{ dir = 2 }, -/area/syndicate_mothership/control) -"qO" = ( -/obj/item/soap/syndie, -/obj/structure/mopbucket, -/obj/machinery/light/small{ +/obj/machinery/light{ dir = 1 }, -/turf/open/floor/plasteel/freezer{ - dir = 2 - }, -/area/syndicate_mothership/control) -"qP" = ( -/obj/structure/mirror{ - pixel_x = 28 - }, -/obj/item/mop, -/turf/open/floor/plasteel/freezer{ - dir = 2 - }, -/area/syndicate_mothership/control) +/turf/open/floor/plating, +/area/syndicate_mothership) "qQ" = ( /obj/machinery/door/airlock/centcom{ name = "Administrative Office"; @@ -7498,70 +7414,37 @@ /obj/machinery/computer/shuttle, /turf/open/floor/engine/cult, /area/wizard_station) -"rd" = ( -/obj/structure/flora/grass/brown, -/obj/effect/light_emitter{ - set_cap = 1; - set_luminosity = 4 +"rb" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 }, -/turf/open/floor/plating/asteroid/snow/airless, +/turf/open/floor/plating, /area/syndicate_mothership) -"re" = ( -/obj/item/paper/fluff/stations/centcom/disk_memo, -/obj/structure/noticeboard{ - pixel_x = -32 - }, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"rf" = ( -/obj/structure/chair/stool, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"rg" = ( -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/mob/living/simple_animal/hostile/carp/cayenne, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"rh" = ( +"rc" = ( /obj/machinery/door/airlock/centcom{ - name = "Restroom"; - opacity = 1; - req_access_txt = "150" + name = "Equipment Room"; + req_one_access_txt = "150" }, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"rd" = ( /obj/effect/turf_decal/tile/bar, /obj/effect/turf_decal/tile/bar{ dir = 1 }, +/obj/machinery/light{ + dir = 8 + }, /turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"ri" = ( -/turf/open/floor/plasteel/freezer{ - dir = 2 +/area/syndicate_mothership) +"rf" = ( +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 }, -/area/syndicate_mothership/control) -"rj" = ( -/obj/structure/mirror{ - pixel_x = 28 - }, -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/turf/open/floor/plasteel/freezer{ - dir = 2 - }, -/area/syndicate_mothership/control) +/obj/machinery/vending/coffee, +/turf/open/floor/plasteel, +/area/syndicate_mothership) "rk" = ( /obj/structure/table/reinforced, /obj/item/book/manual/wiki/security_space_law, @@ -8054,113 +7937,34 @@ }, /turf/open/floor/engine/cult, /area/wizard_station) -"rY" = ( -/obj/effect/landmark/shuttle_import, -/turf/open/space/basic, -/area/space) -"sb" = ( -/obj/structure/window/reinforced{ - dir = 1 +"sc" = ( +/obj/docking_port/stationary{ + area_type = /area/syndicate_mothership/control; + dir = 1; + dwidth = 3; + height = 7; + name = "escape pod loader"; + roundstart_template = /datum/map_template/shuttle/assault_pod/default; + width = 7 }, -/obj/machinery/door/window/eastright{ - dir = 8; - name = "Animal Pen" - }, -/turf/open/floor/grass, -/area/centcom/holding) -"se" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"sf" = ( -/obj/structure/table/wood, -/obj/item/paicard, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"sg" = ( -/obj/structure/table/wood, -/obj/item/pizzabox, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"sh" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start/nukeop, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) +/turf/open/floor/plating, +/area/syndicate_mothership) "si" = ( -/obj/machinery/computer/telecrystals/uplinker, -/obj/effect/turf_decal/stripes/line{ - dir = 9 +/obj/structure/table/wood, +/obj/item/reagent_containers/food/drinks/beer{ + pixel_x = 5; + pixel_y = -2 }, -/turf/open/floor/mineral/plastitanium/red, -/area/syndicate_mothership/control) -"sj" = ( -/obj/structure/toilet{ - dir = 8 +/obj/item/toy/cards/deck/syndicate{ + pixel_x = -6; + pixel_y = 6 }, -/obj/structure/window/reinforced/tinted{ +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ dir = 1 }, -/obj/machinery/door/window{ - name = "Tactical Toilet"; - icon_state = "right"; - dir = 8; - opacity = 1 - }, -/turf/open/floor/plasteel/freezer{ - dir = 2 - }, -/area/syndicate_mothership/control) -"sk" = ( -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"sl" = ( -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"sm" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 2 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"sn" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 2 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"so" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"sp" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) +/turf/open/floor/plasteel, +/area/syndicate_mothership) "sq" = ( /obj/machinery/computer/shuttle/white_ship{ dir = 4 @@ -8561,68 +8365,48 @@ /turf/open/floor/engine/cult, /area/wizard_station) "sY" = ( -/obj/structure/toilet{ +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/one) +"sZ" = ( +/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/reagent_containers/food/drinks/bottle/vodka, +/turf/open/floor/wood, +/area/syndicate_mothership) +"td" = ( +/obj/effect/turf_decal/stripes/line{ dir = 4 }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"tb" = ( -/obj/machinery/chem_dispenser/drinks/beer, -/turf/closed/indestructible{ - icon = 'icons/turf/walls/wood_wall.dmi'; - icon_state = "wood"; - smooth = 1 - }, -/area/centcom/holding) +/turf/open/floor/plasteel/dark, +/area/centcom/supplypod) "te" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/food/snacks/pizzaslice/mushroom, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 +/obj/machinery/door/airlock/centcom{ + name = "Auxillary Dock"; + opacity = 1; + req_access_txt = "" }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"tf" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/food/drinks/beer{ - pixel_x = 5; - pixel_y = -2 - }, -/obj/item/toy/cards/deck/syndicate{ - pixel_x = -6; - pixel_y = 6 - }, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) +/turf/open/floor/plating, +/area/syndicate_mothership) "tg" = ( -/obj/machinery/computer/telecrystals/uplinker, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/mineral/plastitanium/red, -/area/syndicate_mothership/control) -"th" = ( -/obj/structure/closet/cardboard, +/obj/item/soap/syndie, +/turf/open/floor/plasteel/freezer, +/area/syndicate_mothership) +"tl" = ( /obj/effect/turf_decal/stripes/corner, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"ti" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"tn" = ( +/turf/open/floor/plating, +/area/syndicate_mothership) +"tm" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) +/turf/open/floor/plating, +/area/syndicate_mothership) "to" = ( /obj/machinery/computer/shuttle/ferry{ dir = 4 @@ -8945,6 +8729,14 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/centcom/evac) +"tW" = ( +/obj/structure/rack, +/obj/item/nullrod/claymore{ + damtype = "stamina"; + force = 30 + }, +/turf/open/floor/wood, +/area/centcom/holding) "tX" = ( /obj/machinery/door/airlock{ icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; @@ -8952,38 +8744,36 @@ }, /turf/open/floor/engine/cult, /area/wizard_station) -"tZ" = ( -/mob/living/simple_animal/bot/medbot{ - desc = "When engaged in combat, the vanquishing of thine enemy can be the warrior's only concern."; - name = "Hattori"; - radio_key = null; - stationary_mode = 1 +"tY" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plasteel, +/area/centcom/supplypod) +"uc" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 }, -/turf/open/floor/wood, -/area/centcom/holding) -"ub" = ( -/obj/structure/ladder/unbreakable/binary/space, -/turf/open/indestructible/airblock, -/area/fabric_of_reality) -"ud" = ( -/obj/machinery/door/poddoor/shutters{ - id = "nukeop_ready"; - name = "shuttle dock" - }, -/turf/open/floor/plating, -/area/syndicate_mothership/control) -"ue" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"ui" = ( -/obj/effect/turf_decal/stripes/line{ +/obj/effect/turf_decal/tile/green{ dir = 8 }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) +/turf/open/floor/holofloor, +/area/holodeck/rec_center/basketball) +"ud" = ( +/obj/item/storage/crayons, +/obj/structure/table, +/obj/item/storage/crayons, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/syndicate_mothership) +"uf" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/three) "uj" = ( /obj/item/clipboard, /obj/item/folder/red, @@ -9261,32 +9051,27 @@ /obj/structure/chair/wood/wings, /turf/open/floor/carpet, /area/wizard_station) -"uJ" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "150" - }, -/turf/open/floor/plating, -/area/syndicate_mothership/control) -"uL" = ( -/obj/machinery/button/door{ - id = "nukeop_ready"; - name = "mission launch control"; - pixel_x = -26; - req_access_txt = "151" - }, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ +"uG" = ( +/obj/structure/chair{ dir = 1 }, -/turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"uM" = ( -/obj/machinery/computer/telecrystals/uplinker, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, /turf/open/floor/mineral/plastitanium/red, -/area/syndicate_mothership/control) +/area/centcom/evac) +"uJ" = ( +/obj/effect/baseturf_helper/asteroid/snow, +/turf/closed/indestructible/riveted, +/area/syndicate_mothership) +"uM" = ( +/obj/structure/mirror{ + pixel_x = -28 + }, +/obj/structure/sink{ + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/turf/open/floor/plasteel/freezer, +/area/syndicate_mothership) "uO" = ( /obj/machinery/door/airlock/centcom{ name = "Shuttle Control Office"; @@ -9553,41 +9338,58 @@ }, /turf/open/floor/carpet, /area/wizard_station) -"vq" = ( -/obj/structure/window/reinforced{ +"vo" = ( +/obj/machinery/door/airlock/centcom{ + name = "CentCom Supply"; + req_access_txt = "106" + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod) +"vs" = ( +/obj/machinery/vending/hydronutrients, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ dir = 4 }, -/turf/open/floor/carpet/black, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, /area/centcom/holding) -"vr" = ( -/obj/structure/dresser, -/obj/machinery/light{ - dir = 1 +"vt" = ( +/obj/structure/rack, +/obj/item/nullrod/claymore/katana{ + damtype = "stamina"; + force = 30 }, /turf/open/floor/wood, /area/centcom/holding) "vu" = ( -/obj/item/storage/box/drinkingglasses, -/obj/item/reagent_containers/food/drinks/bottle/rum, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/syndicate_mothership/control) -"vv" = ( -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/syndicate_mothership/control) -"vw" = ( -/obj/structure/table/wood, -/obj/item/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." +/obj/structure/chair/stool, +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 }, -/turf/open/floor/wood, -/area/syndicate_mothership/control) -"vx" = ( -/obj/structure/table/wood, -/obj/item/toy/nuke, -/turf/open/floor/wood, -/area/syndicate_mothership/control) +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"vw" = ( +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/mob/living/simple_animal/hostile/carp/cayenne, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"vy" = ( +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/basketball) "vA" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/sign/directions/engineering{ @@ -9946,67 +9748,37 @@ }, /turf/open/floor/carpet, /area/wizard_station) -"we" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "sink"; - pixel_y = 28 - }, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"wg" = ( -/turf/open/floor/wood, -/area/centcom/holding) -"wi" = ( -/obj/docking_port/stationary{ - dir = 4; - dwidth = 2; - height = 7; - id = "pod_away"; - name = "recovery ship"; - width = 5 - }, -/turf/open/space, -/area/space) +"wh" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/three) "wl" = ( -/obj/machinery/light, -/turf/open/floor/wood, -/area/syndicate_mothership/control) -"wm" = ( -/obj/effect/landmark/start/nukeop_leader, -/turf/open/floor/wood, -/area/syndicate_mothership/control) -"wn" = ( -/turf/open/floor/wood, -/area/syndicate_mothership/control) -"wo" = ( -/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) -"wp" = ( -/obj/machinery/light, +/obj/structure/table/wood, +/obj/item/paicard, /obj/effect/turf_decal/tile/bar, /obj/effect/turf_decal/tile/bar{ dir = 1 }, /turf/open/floor/plasteel, -/area/syndicate_mothership/control) +/area/syndicate_mothership) +"wm" = ( +/obj/structure/table/wood, +/obj/item/pizzabox, +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"wp" = ( +/turf/open/floor/plasteel/dark, +/area/syndicate_mothership) +"wq" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/centcom/evac) "wr" = ( /obj/structure/chair{ dir = 4 @@ -10248,66 +10020,24 @@ /obj/item/toy/cards/deck, /turf/open/floor/carpet, /area/wizard_station) -"wV" = ( -/obj/machinery/computer/telecrystals/boss{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/mineral/plastitanium/red, -/area/syndicate_mothership/control) -"wW" = ( -/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/reagent_containers/food/drinks/bottle/vodka, -/turf/open/floor/wood, -/area/syndicate_mothership/control) "wX" = ( -/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/reagent_containers/food/drinks/bottle/gin, -/turf/open/floor/wood, -/area/syndicate_mothership/control) -"wY" = ( -/obj/machinery/door/airlock/centcom{ - name = "Equipment Room"; - opacity = 1; - req_access_txt = "150" - }, /obj/effect/turf_decal/tile/bar, /obj/effect/turf_decal/tile/bar{ dir = 1 }, +/obj/structure/chair/stool, /turf/open/floor/plasteel, -/area/syndicate_mothership/control) -"wZ" = ( -/obj/structure/chair/wood/wings{ - dir = 3 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/wood, -/area/centcom/holding) +/area/syndicate_mothership) "xa" = ( -/obj/structure/chair/wood/wings{ - dir = 3 +/obj/machinery/door/window/northright{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Security Desk"; + req_access_txt = "103" }, -/turf/open/floor/wood, -/area/centcom/holding) +/turf/open/floor/mineral/plastitanium/red, +/area/centcom/evac) "xb" = ( /obj/docking_port/stationary{ dir = 8; @@ -10517,68 +10247,22 @@ /obj/machinery/light, /turf/open/floor/carpet, /area/wizard_station) -"xC" = ( -/obj/structure/window/reinforced, -/turf/open/floor/carpet/black, -/area/centcom/holding) "xG" = ( -/turf/open/floor/plasteel/dark, -/area/syndicate_mothership/control) -"xH" = ( -/obj/machinery/mech_bay_recharge_port, -/turf/open/floor/plating, -/area/syndicate_mothership/control) -"xI" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/mech_bay_recharge_floor, -/area/syndicate_mothership/control) -"xJ" = ( -/obj/machinery/computer/mech_bay_power_console, -/turf/open/floor/plating, -/area/syndicate_mothership/control) -"xK" = ( -/obj/machinery/vending/tool, -/turf/open/floor/plasteel/dark, -/area/syndicate_mothership/control) -"xL" = ( -/obj/structure/closet/cardboard/metal, -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"xM" = ( +/obj/structure/closet/syndicate/personal, /obj/effect/turf_decal/stripes/line{ dir = 5 }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"xN" = ( -/obj/docking_port/stationary{ - area_type = /area/syndicate_mothership/control; - dir = 1; - dwidth = 3; - height = 7; - name = "escape pod loader"; - roundstart_template = /datum/map_template/shuttle/assault_pod/default; - width = 7 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"xO" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"xP" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) +/turf/open/floor/mineral/plastitanium/red, +/area/syndicate_mothership) +"xI" = ( +/obj/effect/landmark/start/nukeop, +/turf/open/floor/plasteel/dark, +/area/syndicate_mothership) +"xJ" = ( +/obj/structure/bed, +/obj/item/bedsheet/syndie, +/turf/open/floor/plasteel/dark, +/area/syndicate_mothership) "xQ" = ( /obj/effect/turf_decal/delivery, /obj/machinery/light, @@ -10687,24 +10371,25 @@ }, /turf/open/floor/engine/cult, /area/wizard_station) +"yc" = ( +/obj/machinery/vending/snack, +/turf/open/floor/plasteel, +/area/centcom/supplypod) "yd" = ( -/obj/effect/turf_decal/tile/brown{ +/obj/structure/flora/ausbushes/fernybush, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/palebush, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/light{ dir = 8 }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/three) -"yg" = ( -/obj/structure/rack, -/obj/item/nullrod/scythe/vibro{ - damtype = "stamina"; - force = 30 - }, -/turf/open/floor/wood, +/turf/open/floor/grass, /area/centcom/holding) +"yg" = ( +/obj/structure/chair, +/turf/open/floor/mineral/titanium, +/area/centcom/evac) "yj" = ( /obj/machinery/door/airlock/centcom{ name = "CentCom Security"; @@ -10719,25 +10404,6 @@ }, /turf/open/floor/plasteel, /area/centcom/control) -"yk" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"yl" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) -"ym" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/light, -/turf/open/floor/plating/airless, -/area/syndicate_mothership/control) "yn" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/sign/warning/vacuum, @@ -10966,19 +10632,23 @@ /obj/effect/decal/cleanable/blood/splatter, /turf/open/floor/grass, /area/wizard_station) +"yM" = ( +/obj/structure/table/wood/bar, +/obj/structure/safe/floor, +/obj/item/seeds/cherry/bomb, +/turf/open/floor/wood, +/area/centcom/holding) "yN" = ( +/obj/structure/table/reinforced, +/obj/item/paper/pamphlet/centcom/visitor_info, +/turf/open/floor/plasteel, +/area/centcom/supplypod) +"yP" = ( /obj/machinery/light{ dir = 4 }, -/turf/open/floor/wood, -/area/centcom/holding) -"yO" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/mob/living/simple_animal/chicken, -/turf/open/floor/grass, -/area/centcom/holding) +/turf/open/floor/plating, +/area/syndicate_mothership) "yU" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/centcom{ @@ -10993,10 +10663,11 @@ }, /turf/open/floor/plasteel, /area/centcom/control) -"yX" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/dark, -/area/syndicate_mothership/control) +"yV" = ( +/obj/structure/table, +/obj/item/kitchen/rollingpin, +/turf/open/floor/plasteel/cafeteria, +/area/syndicate_mothership) "yY" = ( /obj/structure/table/wood, /obj/item/storage/fancy/donut_box, @@ -11184,6 +10855,12 @@ }, /turf/open/floor/plasteel, /area/centcom/evac) +"zn" = ( +/obj/machinery/door/airlock/external{ + req_one_access_txt = "150" + }, +/turf/open/floor/plating, +/area/syndicate_mothership) "zo" = ( /obj/structure/destructible/cult/tome, /turf/open/floor/engine/cult, @@ -11205,29 +10882,24 @@ /obj/item/reagent_containers/food/snacks/meat/slab/corgi, /turf/open/floor/grass, /area/wizard_station) -"zt" = ( -/obj/machinery/light{ - dir = 8 - }, +"zs" = ( +/obj/machinery/vending/tool, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/plastitanium/red, +/area/syndicate_mothership) +"zu" = ( +/obj/item/storage/box/drinkingglasses, +/obj/item/reagent_containers/food/drinks/bottle/rum, +/obj/structure/table/wood, /turf/open/floor/wood, -/area/centcom/holding) +/area/syndicate_mothership) "zx" = ( /obj/structure/closet/syndicate/personal, /obj/effect/turf_decal/stripes/line{ - dir = 1 + dir = 6 }, /turf/open/floor/mineral/plastitanium/red, -/area/syndicate_mothership/control) -"zy" = ( -/obj/structure/table, -/obj/item/gun/energy/ionrifle{ - pin = /obj/item/firing_pin - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/mineral/plastitanium/red, -/area/syndicate_mothership/control) +/area/syndicate_mothership) "zz" = ( /obj/structure/table/wood, /obj/item/storage/box/drinkingglasses, @@ -11365,15 +11037,18 @@ /turf/open/floor/plating/asteroid, /area/centcom/evac) "zM" = ( -/obj/effect/turf_decal/tile/green{ - dir = 8 +/obj/machinery/button/door{ + id = "nukeop_ready"; + name = "mission launch control"; + pixel_x = -26; + req_access_txt = "151" }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ dir = 1 }, -/turf/open/floor/holofloor, -/area/holodeck/rec_center/basketball) +/turf/open/floor/plasteel, +/area/syndicate_mothership) "zN" = ( /obj/structure/bookcase/random/reference, /turf/open/floor/engine/cult, @@ -11399,24 +11074,38 @@ }, /turf/open/floor/grass, /area/wizard_station) -"zX" = ( -/obj/machinery/light{ - dir = 8 +"zR" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 }, -/obj/structure/rack, -/obj/item/nullrod/claymore/glowing{ - damtype = "stamina"; - force = 30 +/turf/open/floor/plating, +/area/syndicate_mothership) +"zU" = ( +/obj/structure/closet/crate/freezer, +/turf/open/floor/plasteel/cafeteria, +/area/syndicate_mothership) +"zV" = ( +/obj/structure/closet/secure_closet/freezer/meat{ + locked = 0 }, -/turf/open/floor/wood, +/obj/item/reagent_containers/food/snacks/carpmeat, +/obj/item/reagent_containers/food/snacks/carpmeat, +/obj/item/reagent_containers/food/snacks/carpmeat, +/obj/item/reagent_containers/food/snacks/carpmeat, +/obj/item/reagent_containers/food/snacks/carpmeat, +/turf/open/floor/plasteel/cafeteria, /area/centcom/holding) -"zZ" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 +"zX" = ( +/obj/structure/table, +/obj/machinery/light{ + dir = 1 }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/three) +/obj/item/soap/deluxe, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Aa" = ( +/turf/open/floor/mech_bay_recharge_floor, +/area/syndicate_mothership) "Ab" = ( /obj/machinery/photocopier, /turf/open/floor/plasteel/grimy, @@ -11652,55 +11341,17 @@ /obj/effect/decal/remains/xeno, /turf/open/floor/grass, /area/wizard_station) -"AC" = ( -/obj/machinery/seed_extractor, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) "AD" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/light{ - dir = 8 +/obj/machinery/door/airlock/centcom{ + name = "Leader's Room"; + req_one_access_txt = "151" }, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"AF" = ( -/obj/structure/chair, -/turf/open/floor/mineral/titanium, -/area/centcom/evac) +/turf/open/floor/plasteel, +/area/syndicate_mothership) "AG" = ( -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/four) -"AI" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/one) +/obj/structure/ladder/unbreakable/binary/space, +/turf/open/indestructible/airblock, +/area/fabric_of_reality) "AJ" = ( /obj/structure/chair/comfy/brown{ color = "#596479"; @@ -11910,33 +11561,31 @@ /obj/item/reagent_containers/food/snacks/meat/slab/xeno, /turf/open/floor/grass, /area/wizard_station) -"Bm" = ( -/obj/machinery/light{ +"Bl" = ( +/obj/machinery/mech_bay_recharge_port, +/turf/open/floor/plating, +/area/syndicate_mothership) +"Bo" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder, +/obj/item/reagent_containers/glass/beaker/large, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ dir = 8 }, -/obj/structure/rack, -/obj/item/nullrod/claymore/saber{ - damtype = "stamina"; - force = 30 - }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"Bs" = ( +/obj/structure/table/wood, +/obj/machinery/computer/libraryconsole/bookmanagement, /turf/open/floor/wood, /area/centcom/holding) -"Bn" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/carpet/black, -/area/centcom/holding) -"Bo" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/plastitanium/red, -/area/centcom/evac) -"Bp" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plasteel, -/area/centcom/supplypod) "Bu" = ( /obj/structure/table/wood, /obj/item/paper_bin, @@ -12254,11 +11903,12 @@ /turf/open/floor/engine/cult, /area/wizard_station) "BV" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 +/obj/machinery/chem_dispenser/drinks/beer, +/turf/closed/indestructible{ + icon = 'icons/turf/walls/wood_wall.dmi'; + icon_state = "wood"; + smooth = 1 }, -/turf/open/floor/carpet/black, /area/centcom/holding) "BY" = ( /obj/item/toy/figure/syndie, @@ -12395,13 +12045,6 @@ }, /turf/open/floor/engine/cult, /area/wizard_station) -"Cm" = ( -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/holodeck/rec_center/basketball) "Cp" = ( /obj/structure/statue/uranium/nuke, /turf/open/floor/plating/asteroid/snow/airless, @@ -12818,12 +12461,16 @@ }, /turf/open/floor/plasteel/dark, /area/centcom/evac) -"CU" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 +"CT" = ( +/obj/machinery/vr_sleeper{ + dir = 4 }, -/turf/open/floor/plasteel/dark, -/area/centcom/supplypod) +/turf/open/floor/wood, +/area/centcom/holding) +"CV" = ( +/obj/structure/chair/stool, +/turf/open/floor/wood, +/area/centcom/holding) "CX" = ( /obj/structure/closet/secure_closet/security, /obj/item/storage/belt/security/full, @@ -13010,26 +12657,29 @@ /turf/open/floor/plasteel/dark, /area/centcom/evac) "Di" = ( -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/three) +/turf/closed/indestructible/riveted, +/area/ai_multicam_room) "Dj" = ( -/obj/structure/flora/ausbushes/fernybush, -/obj/structure/flora/ausbushes/fullgrass, -/obj/structure/flora/ausbushes/ppflowers, -/obj/structure/flora/ausbushes/palebush, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/light{ +/obj/machinery/vr_sleeper{ dir = 8 }, -/turf/open/floor/grass, -/area/centcom/holding) -"Dk" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -27 - }, /turf/open/floor/wood, /area/centcom/holding) +"Dk" = ( +/obj/structure/table, +/turf/open/floor/plasteel/cafeteria, +/area/syndicate_mothership) +"Do" = ( +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/obj/machinery/door/window/westleft{ + name = "Uplink Management Control"; + req_access_txt = "151" + }, +/turf/open/floor/plasteel, +/area/syndicate_mothership) "Dq" = ( /obj/machinery/door/airlock/external, /obj/effect/turf_decal/stripes/line{ @@ -13101,15 +12751,6 @@ }, /turf/open/floor/plasteel/dark, /area/centcom/evac) -"Dy" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/centcom/supplypod) "Dz" = ( /obj/structure/table/reinforced, /obj/item/paper_bin, @@ -13861,19 +13502,21 @@ /obj/structure/chair/stool, /turf/open/floor/carpet/black, /area/centcom/holding) -"Fd" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/two) +"Fg" = ( +/obj/structure/flora/grass/brown, +/obj/effect/light_emitter, +/turf/open/floor/plating/asteroid/snow/airless, +/area/syndicate_mothership) "Fh" = ( /turf/open/floor/plasteel/cafeteria, /area/centcom/holding) "Fi" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/food/drinks/bottle/sake, +/obj/structure/chair/wood/wings{ + dir = 3 + }, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/wood, /area/centcom/holding) "Fj" = ( @@ -14173,6 +13816,21 @@ "FX" = ( /turf/open/floor/plasteel/stairs, /area/centcom/holding) +"FZ" = ( +/obj/structure/table/reinforced, +/obj/item/paper_bin, +/turf/open/floor/mineral/plastitanium/red, +/area/centcom/evac) +"Ga" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/three) "Gb" = ( /obj/machinery/shower{ dir = 4 @@ -14372,6 +14030,12 @@ }, /turf/open/lava/airless, /area/wizard_station) +"GA" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/syndicate_mothership) "GC" = ( /obj/structure/table, /obj/structure/bedsheetbin, @@ -14701,6 +14365,15 @@ }, /turf/open/floor/wood, /area/centcom/holding) +"Ha" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod) "Hb" = ( /obj/structure/sink{ dir = 8; @@ -14978,23 +14651,6 @@ }, /turf/open/floor/plasteel, /area/tdome/tdomeobserve) -"HE" = ( -/obj/structure/table/wood, -/obj/machinery/chem_dispenser/drinks/beer{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/tdome/tdomeobserve) "HF" = ( /obj/structure/sink{ dir = 4; @@ -15124,22 +14780,23 @@ /turf/open/floor/plasteel, /area/tdome/tdomeobserve) "HQ" = ( -/obj/structure/table/wood, -/obj/machinery/chem_dispenser/drinks{ - dir = 8 +/obj/structure/sink/kitchen{ + desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; + name = "sink"; + pixel_y = 28 }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/green{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/green{ dir = 8 }, -/turf/open/floor/plasteel/dark, -/area/tdome/tdomeobserve) +/turf/open/floor/plasteel/white, +/area/centcom/holding) "HR" = ( /obj/structure/sink{ dir = 4; @@ -15622,6 +15279,13 @@ }, /turf/open/floor/plasteel, /area/tdome/arena) +"IK" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod) "IL" = ( /obj/effect/landmark/thunderdome/one, /obj/effect/turf_decal/stripes/line{ @@ -15643,10 +15307,6 @@ }, /turf/open/floor/plasteel, /area/tdome/arena) -"IO" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel, -/area/centcom/supplypod) "IP" = ( /obj/structure/rack, /obj/item/clothing/under/color/green, @@ -15975,11 +15635,13 @@ /turf/open/floor/plasteel, /area/tdome/arena) "JE" = ( -/obj/machinery/light{ - dir = 8 +/obj/structure/sink/kitchen{ + desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; + name = "sink"; + pixel_y = 28 }, -/turf/open/floor/mineral/titanium, -/area/centcom/evac) +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) "JF" = ( /obj/machinery/computer/camera_advanced/abductor{ team_number = 1 @@ -16014,13 +15676,13 @@ "JI" = ( /turf/closed/indestructible/fakeglass, /area/tdome/tdomeadmin) -"JJ" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ +"JK" = ( +/obj/machinery/computer/telecrystals/uplinker, +/obj/effect/turf_decal/stripes/line{ dir = 8 }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/four) +/turf/open/floor/mineral/plastitanium/red, +/area/syndicate_mothership) "JL" = ( /obj/structure/rack, /obj/item/clothing/under/color/green, @@ -16152,9 +15814,6 @@ }, /turf/open/floor/plasteel/dark, /area/tdome/tdomeadmin) -"JV" = ( -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/one) "JX" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/line{ @@ -16210,10 +15869,6 @@ }, /turf/open/floor/plasteel/dark, /area/tdome/tdomeadmin) -"Kf" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/space/basic, -/area/centcom/supplypod) "Kg" = ( /turf/closed/indestructible/fakedoor{ name = "Thunderdome Admin" @@ -16477,16 +16132,6 @@ }, /turf/open/floor/plasteel/dark, /area/tdome/tdomeadmin) -"Kz" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/two) "KA" = ( /obj/structure/flora/ausbushes/lavendergrass, /obj/structure/flora/ausbushes/sparsegrass, @@ -16593,6 +16238,12 @@ "KS" = ( /turf/closed/wall/mineral/titanium/interior, /area/centcom/evac) +"KT" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/wood, +/area/centcom/holding) "KU" = ( /obj/structure/closet/emcloset, /turf/open/floor/mineral/titanium/blue, @@ -16662,13 +16313,6 @@ }, /turf/open/floor/mineral/titanium/blue, /area/centcom/evac) -"Lk" = ( -/obj/machinery/door/airlock/centcom{ - name = "CentCom Supply"; - req_access_txt = "106" - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod) "Lp" = ( /obj/structure/chair{ dir = 4 @@ -16721,8 +16365,9 @@ /turf/open/floor/mineral/titanium/blue, /area/centcom/evac) "LE" = ( -/obj/structure/table/reinforced, -/turf/open/floor/mineral/plastitanium/red, +/obj/structure/table, +/obj/item/radio/off, +/turf/open/floor/mineral/titanium/blue, /area/centcom/evac) "LG" = ( /obj/structure/filingcabinet, @@ -16736,6 +16381,14 @@ }, /turf/open/floor/mineral/titanium/blue, /area/centcom/evac) +"LJ" = ( +/obj/structure/table, +/obj/item/radio/off, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) "LK" = ( /obj/machinery/abductor/experiment{ team_number = 2 @@ -16928,7 +16581,53 @@ /turf/open/floor/plasteel, /area/tdome/arena) "Mk" = ( -/obj/structure/table/wood, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plating, +/area/syndicate_mothership) +"Mm" = ( +/turf/open/floor/grass, +/area/centcom/holding) +"Mt" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/carpet/black, +/area/centcom/holding) +"Mu" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"Mv" = ( +/obj/structure/table/reinforced, +/obj/item/storage/fancy/donut_box, +/turf/open/floor/plasteel, +/area/centcom/supplypod) +"Mx" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/rack, +/obj/item/nullrod/claymore/saber/red{ + damtype = "stamina"; + force = 30 + }, /turf/open/floor/wood, /area/centcom/holding) "My" = ( @@ -16945,14 +16644,13 @@ }, /turf/open/floor/plating/asteroid/snow/airless, /area/syndicate_mothership) -"MA" = ( -/obj/item/clothing/under/jabroni, -/obj/item/clothing/under/geisha, -/obj/item/clothing/under/kilt, -/obj/structure/closet, -/obj/item/clothing/under/roman, -/turf/open/floor/wood, -/area/centcom/holding) +"MB" = ( +/turf/open/indestructible/binary, +/area/fabric_of_reality) +"MC" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/plasteel, +/area/centcom/supplypod) "MD" = ( /obj/effect/light_emitter{ set_cap = 1; @@ -16971,12 +16669,62 @@ }, /turf/open/floor/wood, /area/wizard_station) -"MH" = ( +"MF" = ( /obj/structure/table/wood, -/obj/item/reagent_containers/food/snacks/sashimi, +/obj/item/paper_bin, +/obj/item/pen/red, /turf/open/floor/wood, +/area/syndicate_mothership) +"MG" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/door/window/eastright{ + dir = 8; + name = "Animal Pen" + }, +/turf/open/floor/grass, /area/centcom/holding) +"MH" = ( +/obj/structure/ladder/unbreakable/binary/unlinked, +/turf/open/indestructible/airblock, +/area/fabric_of_reality) "MI" = ( +/turf/open/floor/plating, +/area/syndicate_mothership) +"MM" = ( +/obj/structure/window/reinforced, +/turf/open/floor/carpet/black, +/area/centcom/holding) +"MP" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/centcom/supplypod) +"MR" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/carpet/black, +/area/centcom/holding) +"MS" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/condiment/enzyme, +/turf/open/floor/plasteel/cafeteria, +/area/syndicate_mothership) +"MT" = ( +/obj/machinery/processor, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"MU" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/two) +"Nc" = ( /obj/effect/turf_decal/tile/brown{ dir = 8 }, @@ -16984,31 +16732,28 @@ dir = 1 }, /turf/open/floor/plasteel, -/area/centcom/supplypod/loading/three) -"MN" = ( +/area/centcom/supplypod/loading/one) +"Nd" = ( +/turf/closed/indestructible{ + icon = 'icons/turf/walls/wood_wall.dmi'; + icon_state = "wood"; + smooth = 1 + }, +/area/centcom/holding) +"Ni" = ( /obj/structure/table/reinforced, -/obj/item/folder/white, -/obj/item/pen/blue, -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"MP" = ( -/turf/open/ai_visible, -/area/ai_multicam_room) -"MT" = ( -/turf/open/indestructible/airblock, -/area/fabric_of_reality) -"Nb" = ( -/turf/open/floor/grass, -/area/centcom/holding) -"Nc" = ( -/obj/structure/closet/chefcloset, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"Nf" = ( -/obj/machinery/light{ +/obj/item/clipboard, +/obj/item/stamp, +/turf/open/floor/mineral/plastitanium/red, +/area/centcom/evac) +"Nj" = ( +/obj/structure/window/reinforced{ dir = 8 }, -/turf/open/floor/plasteel/white, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/carpet/black, /area/centcom/holding) "Nk" = ( /obj/machinery/door/airlock/centcom{ @@ -17025,30 +16770,76 @@ /turf/open/floor/plasteel, /area/tdome/tdomeobserve) "Nm" = ( -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 +/obj/structure/closet/crate, +/obj/item/vending_refill/autodrobe, +/obj/item/stack/sheet/paperframes/fifty, +/obj/item/stack/sheet/paperframes/fifty, +/obj/item/storage/fancy/candle_box, +/obj/item/storage/fancy/candle_box, +/obj/item/storage/fancy/candle_box, +/obj/item/storage/box/lights/mixed, +/turf/open/floor/wood, +/area/centcom/holding) +"Nn" = ( +/obj/structure/closet/secure_closet/hydroponics{ + locked = 0 }, -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/green{ dir = 1 }, -/turf/open/floor/holofloor, -/area/holodeck/rec_center/basketball) -"Nq" = ( -/obj/machinery/door/airlock/centcom{ - name = "CentCom Supply"; - req_access_txt = "106" +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"Nu" = ( +/turf/open/floor/wood, +/area/syndicate_mothership) +"Nv" = ( +/obj/structure/table, +/turf/open/floor/plasteel/cafeteria{ + dir = 2 + }, +/area/centcom/holding) +"Nw" = ( +/obj/machinery/recharge_station, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"Ny" = ( +/obj/machinery/modular_computer/console/preset/research, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Nz" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 1 }, -/turf/open/floor/plasteel/dark, -/area/centcom/supplypod) -"Nt" = ( -/obj/effect/landmark/ai_multicam_room, -/turf/open/ai_visible, -/area/ai_multicam_room) -"NE" = ( -/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plasteel, -/area/centcom/supplypod) +/area/centcom/supplypod/loading/two) +"ND" = ( +/obj/structure/closet, +/obj/item/storage/backpack/duffelbag/med/surgery, +/obj/machinery/iv_drip, +/obj/item/roller, +/obj/item/storage/firstaid/regular, +/obj/item/reagent_containers/medspray/synthflesh, +/obj/item/reagent_containers/medspray/synthflesh, +/obj/item/reagent_containers/medspray/synthflesh, +/turf/open/floor/wood, +/area/centcom/holding) +"NF" = ( +/obj/structure/ladder/unbreakable/binary, +/turf/open/indestructible/airblock, +/area/fabric_of_reality) "NG" = ( /obj/machinery/door/airlock/centcom{ name = "CentCom Security"; @@ -17064,24 +16855,28 @@ /turf/open/floor/plasteel, /area/centcom/control) "NJ" = ( -/obj/structure/rack, -/obj/item/nullrod/claymore/katana{ - damtype = "stamina"; - force = 30 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"NK" = ( /obj/structure/table, -/obj/item/storage/box/handcuffs, -/turf/open/floor/mineral/plastitanium/red, -/area/centcom/evac) -"NP" = ( -/obj/structure/urinal{ - pixel_y = 28 +/obj/item/book/manual/hydroponics_pod_people, +/obj/item/seeds/pumpkin/blumpkin, +/obj/item/paper/guides/jobs/hydroponics, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 }, /turf/open/floor/plasteel/white, /area/centcom/holding) +"NT" = ( +/obj/structure/window/paperframe{ + CanAtmosPass = 0 + }, +/turf/open/floor/wood, +/area/centcom/holding) "NU" = ( /obj/machinery/door/airlock/centcom{ name = "CentCom"; @@ -17095,44 +16890,46 @@ }, /turf/open/floor/plasteel, /area/centcom/control) -"Ob" = ( -/obj/machinery/vr_sleeper{ - dir = 4 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Oc" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/carpet/black, -/area/centcom/holding) -"Od" = ( -/obj/structure/table/wood, -/obj/machinery/computer/libraryconsole/bookmanagement, -/turf/open/floor/wood, -/area/centcom/holding) -"Of" = ( -/obj/machinery/vr_sleeper{ - dir = 8 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Og" = ( -/obj/structure/table/reinforced, -/obj/item/reagent_containers/food/drinks/bottle/whiskey{ - pixel_y = 5 +"NV" = ( +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 }, +/obj/machinery/vending/cola/sodie, /turf/open/floor/plasteel, +/area/syndicate_mothership) +"Oa" = ( +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/syndicate_mothership) +"Ob" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, /area/centcom/supplypod) -"Oh" = ( +"Oc" = ( /obj/structure/table, -/obj/item/book/manual/chef_recipes, +/obj/item/reagent_containers/food/condiment/peppermill{ + pixel_x = 3; + pixel_y = 6 + }, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -3; + pixel_y = 6 + }, /turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) +/area/syndicate_mothership) +"Oe" = ( +/obj/machinery/deepfryer, +/turf/open/floor/plasteel/cafeteria, +/area/syndicate_mothership) +"Oh" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/centcom/supplypod) "Oj" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/centcom{ @@ -17147,7 +16944,53 @@ }, /turf/open/floor/plasteel, /area/centcom/control) -"Ol" = ( +"Om" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/three) +"Op" = ( +/obj/structure/sink{ + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/machinery/button/door{ + id = "lmrestroom"; + name = "Lock Control"; + pixel_y = -28 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"Or" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/two) +"Ou" = ( +/turf/closed/indestructible/fakedoor{ + name = "Cold Storage" + }, +/area/syndicate_mothership) +"Ov" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/dark, +/area/centcom/supplypod) +"Oz" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plating, +/area/syndicate_mothership) +"OB" = ( +/obj/machinery/door/airlock/centcom{ + name = "Barracks"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"OE" = ( /obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ dir = 8 @@ -17157,126 +17000,346 @@ }, /turf/open/floor/plasteel, /area/centcom/supplypod) -"Oo" = ( -/obj/structure/table/wood/bar, -/obj/structure/mirror{ - pixel_y = 28 +"OG" = ( +/obj/structure/dresser, +/obj/machinery/light{ + dir = 1 }, /turf/open/floor/wood, /area/centcom/holding) -"Op" = ( -/obj/structure/table/reinforced, -/obj/item/paper/pamphlet/centcom/visitor_info, -/turf/open/floor/plasteel, +"OH" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plasteel/dark, /area/centcom/supplypod) -"Oq" = ( -/obj/structure/chair{ - dir = 1 +"OL" = ( +/obj/structure/mineral_door/paperframe{ + name = "Dojo" }, +/turf/open/floor/wood, +/area/centcom/holding) +"OM" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/centcom/supplypod) +"ON" = ( +/obj/structure/table, +/obj/item/storage/box/handcuffs, /turf/open/floor/mineral/plastitanium/red, /area/centcom/evac) -"Ou" = ( -/obj/structure/flora/ausbushes/fernybush, +"OS" = ( +/obj/structure/mecha_wreckage/mauler, +/turf/open/floor/plasteel/dark, +/area/syndicate_mothership) +"OU" = ( +/obj/item/clothing/under/jabroni, +/obj/item/clothing/under/geisha, +/obj/item/clothing/under/kilt, +/obj/structure/closet, +/obj/item/clothing/under/roman, +/turf/open/floor/wood, +/area/centcom/holding) +"OV" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/wood, +/area/syndicate_mothership) +"OZ" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plating, +/area/syndicate_mothership) +"Pa" = ( +/obj/machinery/washing_machine, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"Pg" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/centcom/supplypod) +"Ph" = ( +/obj/structure/closet/crate/bin, +/turf/open/floor/wood, +/area/centcom/holding) +"Pl" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/carpet/black, +/area/centcom/holding) +"Pn" = ( +/turf/closed/indestructible/fakedoor{ + name = "Equipment Storage" + }, +/area/syndicate_mothership) +"Po" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/carpet/black, +/area/centcom/holding) +"Pq" = ( +/obj/structure/urinal{ + pixel_y = 28 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"Pr" = ( +/obj/structure/table, +/obj/item/book/manual/chef_recipes, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Ps" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/dark, +/area/centcom/supplypod) +"Pv" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/four) +"Pw" = ( +/obj/machinery/light/small, +/turf/open/floor/wood, +/area/syndicate_mothership) +"Px" = ( +/obj/machinery/vr_sleeper, +/turf/open/floor/wood, +/area/centcom/holding) +"PA" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/carpet/black, +/area/centcom/holding) +"PD" = ( +/turf/open/floor/plasteel/cafeteria, +/area/syndicate_mothership) +"PF" = ( +/obj/machinery/vr_sleeper{ + dir = 1 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"PG" = ( +/obj/structure/table/reinforced, +/obj/item/camera, +/turf/open/floor/plasteel, +/area/centcom/supplypod) +"PI" = ( +/obj/machinery/biogenerator, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"PJ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/syndicate_mothership) +"PL" = ( +/obj/machinery/autolathe, +/turf/open/floor/wood, +/area/centcom/holding) +"PO" = ( +/obj/machinery/hydroponics/constructable, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"PP" = ( +/obj/machinery/door/airlock/external{ + req_access_txt = "150" + }, +/turf/open/floor/plating, +/area/syndicate_mothership) +"PS" = ( +/obj/machinery/computer/shuttle/syndicate/recall, +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"PU" = ( +/obj/structure/table/reinforced, +/obj/item/folder/white, +/obj/item/pen/blue, +/turf/open/floor/plasteel, +/area/centcom/supplypod) +"PV" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/firingrange) +"PX" = ( +/obj/machinery/computer/arcade/battle, +/turf/open/floor/wood, +/area/centcom/holding) +"PY" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"PZ" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/four) +"Qa" = ( +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/three) +"Qb" = ( +/obj/machinery/door/airlock/titanium{ + name = "Cockpit"; + req_access_txt = "109" + }, +/turf/open/floor/mineral/titanium, +/area/centcom/evac) +"Qe" = ( +/turf/open/ai_visible, +/area/ai_multicam_room) +"Qk" = ( /obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ppflowers, /obj/structure/flora/ausbushes/palebush, /obj/structure/window/reinforced/fulltile, /turf/open/floor/grass, /area/centcom/holding) -"Ow" = ( -/obj/machinery/door/airlock/wood{ - req_one_access_txt = "0" - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Ox" = ( -/obj/structure/chair/wood/normal{ - dir = 1 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"OD" = ( -/obj/structure/table/reinforced, -/obj/item/storage/fancy/donut_box, -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"OG" = ( -/obj/structure/table/reinforced, -/obj/item/storage/fancy/donut_box, +"Qm" = ( +/obj/singularity/wizard/mapped, +/turf/open/indestructible/binary, +/area/fabric_of_reality) +"Qo" = ( /turf/open/floor/mineral/plastitanium/red, /area/centcom/evac) -"OO" = ( -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ +"Qq" = ( +/turf/open/floor/plasteel/freezer, +/area/syndicate_mothership) +"Qt" = ( +/obj/structure/table/wood, +/obj/item/reagent_containers/food/snacks/pizzaslice/mushroom, +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ dir = 1 }, -/obj/effect/turf_decal/tile/red{ +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"Qu" = ( +/obj/machinery/vr_sleeper{ dir = 8 }, -/turf/open/floor/holofloor, -/area/holodeck/rec_center/basketball) -"OS" = ( -/turf/open/floor/plasteel/dark, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"QA" = ( +/obj/machinery/deepfryer, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"QB" = ( +/obj/machinery/computer/telecrystals/uplinker, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/syndicate_mothership) +"QE" = ( +/turf/open/floor/plasteel, /area/centcom/supplypod) -"OX" = ( +"QH" = ( +/obj/machinery/chem_master/condimaster{ + desc = "Used to separate out liquids - useful for purifying botanical extracts. Also dispenses condiments."; + name = "BrewMaster 2199"; + pixel_x = -4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"QI" = ( +/obj/structure/toilet{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"QK" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/one) +"QL" = ( /obj/structure/flora/ausbushes/fernybush, /obj/structure/flora/ausbushes/ppflowers, /obj/structure/flora/ausbushes/palebush, /obj/structure/window/reinforced/fulltile, /turf/open/floor/grass, /area/centcom/holding) -"Pb" = ( -/obj/effect/turf_decal/tile/green{ - dir = 8 +"QP" = ( +/obj/machinery/computer/mech_bay_power_console{ + dir = 1 }, -/obj/effect/turf_decal/tile/green{ - dir = 4 +/turf/open/floor/plating, +/area/syndicate_mothership) +"QQ" = ( +/obj/machinery/computer/telecrystals/uplinker, +/obj/effect/turf_decal/stripes/line{ + dir = 10 }, -/obj/effect/turf_decal/tile/green, -/turf/open/floor/holofloor, -/area/holodeck/rec_center/basketball) -"Pe" = ( -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/obj/effect/turf_decal/tile/green, -/turf/open/floor/holofloor, -/area/holodeck/rec_center/basketball) -"Pf" = ( -/obj/structure/table, -/obj/item/radio/off, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/centcom/evac) -"Pj" = ( -/obj/machinery/computer/arcade/orion_trail, -/turf/open/floor/wood, -/area/centcom/holding) -"Po" = ( -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/two) -"Pr" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"Pt" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"Py" = ( -/obj/machinery/vending/dinnerware, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"PA" = ( /turf/open/floor/mineral/plastitanium/red, -/area/centcom/evac) -"PB" = ( +/area/syndicate_mothership) +"QR" = ( +/obj/structure/table, +/obj/item/storage/box/donkpockets, +/turf/open/floor/plasteel/cafeteria, +/area/syndicate_mothership) +"QT" = ( /obj/machinery/chem_dispenser/drinks, /turf/closed/indestructible{ icon = 'icons/turf/walls/wood_wall.dmi'; @@ -17284,7 +17347,96 @@ smooth = 1 }, /area/centcom/holding) -"PU" = ( +"QV" = ( +/turf/closed/indestructible/riveted, +/area/syndicate_mothership) +"QW" = ( +/obj/structure/closet/secure_closet/freezer/kitchen{ + locked = 0 + }, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"QX" = ( +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/basketball) +"Ra" = ( +/obj/machinery/door/window/eastright, +/turf/open/floor/carpet/black, +/area/centcom/holding) +"Rb" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plating, +/area/syndicate_mothership) +"Rd" = ( +/obj/machinery/light, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"Re" = ( +/obj/structure/mineral_door/paperframe, +/turf/open/floor/wood, +/area/centcom/holding) +"Rf" = ( +/obj/structure/table/reinforced, +/turf/open/floor/plasteel, +/area/centcom/supplypod) +"Rh" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/grass, +/area/centcom/holding) +"Ri" = ( +/obj/structure/chair/wood/normal{ + dir = 1 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Rj" = ( +/obj/machinery/vending/hydroseeds, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"Rl" = ( +/obj/structure/mirror{ + pixel_x = -28 + }, +/turf/open/floor/plasteel/freezer, +/area/syndicate_mothership) +"Rm" = ( +/obj/structure/chair/wood/wings{ + dir = 3 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Ro" = ( /obj/structure/closet{ anchored = 1; desc = "A storage unit for plasmaman internals, courtesy of the Spider Clan."; @@ -17303,144 +17455,27 @@ /obj/item/tank/internals/plasmaman/belt/full, /turf/open/floor/wood, /area/centcom/holding) -"PX" = ( -/obj/machinery/vending/hydronutrients, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"PY" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/carpet/black, -/area/centcom/holding) -"Qa" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium, -/area/centcom/evac) -"Qb" = ( -/obj/structure/chair/stool, -/turf/open/floor/wood, -/area/centcom/holding) -"Qe" = ( -/obj/item/twohanded/required/kirbyplants{ - icon_state = "plant-10" - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Qf" = ( -/mob/living/simple_animal/bot/medbot{ - desc = "A little medical robot. You can make out the word \"sincerity\" on its chassis."; - name = "Hijikata"; - radio_key = null; - stationary_mode = 1 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Ql" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/holodeck/rec_center/basketball) -"Qq" = ( +"Rz" = ( +/obj/effect/turf_decal/loading_area, +/turf/open/floor/plating, +/area/syndicate_mothership) +"RD" = ( +/obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ - dir = 8 + dir = 4 }, /obj/effect/turf_decal/tile/red{ dir = 1 }, /turf/open/floor/holofloor, /area/holodeck/rec_center/basketball) -"Qs" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 +"RL" = ( +/obj/structure/mineral_door/paperframe{ + name = "Arcade" }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/one) -"Qv" = ( -/obj/structure/closet, -/obj/item/storage/backpack/duffelbag/med/surgery, -/obj/machinery/iv_drip, -/obj/item/roller, -/obj/item/storage/firstaid/regular, -/obj/item/reagent_containers/medspray/synthflesh, -/obj/item/reagent_containers/medspray/synthflesh, -/obj/item/reagent_containers/medspray/synthflesh, /turf/open/floor/wood, /area/centcom/holding) -"QE" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/centcom/supplypod) -"QG" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/carpet/black, -/area/centcom/holding) -"QK" = ( -/obj/structure/table, -/obj/item/book/manual/hydroponics_pod_people, -/obj/item/seeds/pumpkin/blumpkin, -/obj/item/paper/guides/jobs/hydroponics, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"QO" = ( -/obj/structure/chair{ - dir = 4; - name = "Prosecution" - }, -/turf/open/floor/mineral/titanium, -/area/centcom/evac) -"QQ" = ( -/obj/structure/table/reinforced, -/obj/item/clipboard, -/obj/item/stamp, -/turf/open/floor/mineral/plastitanium/red, -/area/centcom/evac) -"QV" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/grass, -/area/centcom/holding) -"QY" = ( -/obj/structure/table, -/obj/item/assembly/flash/handheld, -/turf/open/floor/mineral/plastitanium/red, -/area/centcom/evac) -"QZ" = ( +"RQ" = ( /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-21"; pixel_x = -3; @@ -17448,57 +17483,66 @@ }, /turf/open/floor/wood, /area/centcom/holding) -"Ra" = ( -/obj/machinery/vr_sleeper, +"RR" = ( +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/four) +"RS" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/rack, +/obj/item/nullrod/claymore/glowing{ + damtype = "stamina"; + force = 30 + }, /turf/open/floor/wood, /area/centcom/holding) -"Rb" = ( -/obj/machinery/processor, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"Rc" = ( -/obj/machinery/vending/clothing, -/turf/open/floor/wood, -/area/centcom/holding) -"Re" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel/dark, -/area/centcom/supplypod) -"Rf" = ( -/obj/structure/window/reinforced{ +"RZ" = ( +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ dir = 1 }, -/turf/open/floor/wood, -/area/centcom/holding) -"Rg" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ +/obj/machinery/light{ dir = 4 }, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"Sb" = ( +/obj/structure/table/wood, +/obj/item/toy/prize/mauler{ + pixel_y = 12 + }, +/turf/open/floor/plasteel/dark, +/area/syndicate_mothership) +"Sd" = ( +/turf/open/floor/carpet/black, +/area/centcom/holding) +"Sf" = ( +/obj/structure/chair{ + dir = 4; + name = "Prosecution" + }, +/turf/open/floor/mineral/titanium, +/area/centcom/evac) +"Sg" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating, +/area/syndicate_mothership) +"Sh" = ( +/obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel, -/area/centcom/supplypod) -"Ri" = ( -/obj/structure/mineral_door/paperframe{ - name = "Arcade" - }, +/area/centcom/supplypod/loading/four) +"Si" = ( +/obj/structure/table/wood, +/obj/item/toy/nuke, /turf/open/floor/wood, -/area/centcom/holding) -"Rp" = ( -/obj/structure/closet/crate/freezer/blood, -/turf/open/floor/wood, -/area/centcom/holding) -"Rq" = ( -/obj/structure/table, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/soap/deluxe, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"Ru" = ( +/area/syndicate_mothership) +"So" = ( /obj/structure/chair/wood/wings{ dir = 4 }, @@ -17507,39 +17551,282 @@ }, /turf/open/floor/wood, /area/centcom/holding) -"Ry" = ( -/obj/structure/table/reinforced, -/obj/item/pen, -/turf/open/floor/mineral/plastitanium/red, -/area/centcom/evac) -"Rz" = ( -/obj/structure/ladder/unbreakable/binary/unlinked, -/turf/open/indestructible/airblock, -/area/fabric_of_reality) -"RC" = ( -/obj/effect/turf_decal/tile/brown, +"Sw" = ( +/obj/machinery/hydroponics/constructable, +/obj/machinery/light{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"Sy" = ( /obj/effect/turf_decal/tile/brown{ dir = 8 }, /obj/effect/turf_decal/tile/brown{ - dir = 4 + dir = 1 }, /turf/open/floor/plasteel, -/area/centcom/supplypod/loading/one) -"RF" = ( -/obj/structure/sink{ - dir = 8; - pixel_x = -12; - pixel_y = 2 +/area/centcom/supplypod/loading/four) +"SB" = ( +/obj/structure/curtain, +/obj/structure/window/reinforced/tinted{ + dir = 8 }, -/obj/machinery/button/door{ - id = "lmrestroom"; - name = "Lock Control"; - pixel_y = -28 +/obj/machinery/shower{ + pixel_y = 12 }, /turf/open/floor/plasteel/white, /area/centcom/holding) -"RI" = ( +"SD" = ( +/obj/structure/mopbucket, +/obj/item/mop, +/turf/open/floor/plasteel/freezer, +/area/syndicate_mothership) +"SF" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod) +"SG" = ( +/obj/structure/table, +/obj/machinery/microwave{ + pixel_x = -3; + pixel_y = 6 + }, +/turf/open/floor/plasteel/cafeteria{ + dir = 2 + }, +/area/centcom/holding) +"SH" = ( +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/basketball) +"SI" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/two) +"SN" = ( +/obj/structure/mopbucket, +/obj/item/mop, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"SP" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/space/basic, +/area/centcom/supplypod) +"SU" = ( +/obj/structure/table/wood, +/obj/item/camera/detective{ + desc = "A polaroid camera with extra capacity for social media marketing."; + name = "Professional camera" + }, +/obj/item/camera_film, +/obj/item/wallframe/newscaster, +/obj/item/paper_bin, +/obj/item/pen/fountain, +/turf/open/floor/wood, +/area/centcom/holding) +"SV" = ( +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"SW" = ( +/obj/machinery/seed_extractor, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"SY" = ( +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/centcom/holding) +"Tb" = ( +/obj/structure/closet/crate/freezer/blood, +/turf/open/floor/wood, +/area/centcom/holding) +"Tj" = ( +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/obj/machinery/vending/cigarette/syndicate, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"Tn" = ( +/obj/structure/table/wood/fancy, +/obj/item/candle/infinite{ + pixel_y = 6 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"To" = ( +/turf/open/indestructible/airblock, +/area/fabric_of_reality) +"Tq" = ( +/obj/structure/table/wood/bar, +/obj/item/stack/sheet/glass/fifty, +/obj/item/stack/sheet/metal/fifty, +/obj/item/storage/toolbox/mechanical, +/obj/item/multitool, +/turf/open/floor/wood, +/area/centcom/holding) +"Tr" = ( +/obj/structure/closet/chefcloset, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Tu" = ( +/obj/structure/flora/ausbushes/fernybush, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/palebush, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/grass, +/area/centcom/holding) +"Tw" = ( +/obj/structure/closet{ + anchored = 1; + name = "Plasmaman suits" + }, +/obj/item/clothing/under/plasmaman, +/obj/item/clothing/under/plasmaman, +/obj/item/clothing/under/plasmaman, +/obj/item/clothing/under/plasmaman, +/obj/item/clothing/under/plasmaman, +/obj/item/clothing/head/helmet/space/plasmaman, +/obj/item/clothing/head/helmet/space/plasmaman, +/obj/item/clothing/head/helmet/space/plasmaman, +/obj/item/clothing/head/helmet/space/plasmaman, +/obj/item/clothing/head/helmet/space/plasmaman, +/turf/open/floor/wood, +/area/centcom/holding) +"Tz" = ( +/obj/effect/light_emitter, +/turf/open/floor/plating/asteroid/snow/airless, +/area/syndicate_mothership) +"TA" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/centcom/evac) +"TB" = ( +/obj/structure/reagent_dispensers/cooking_oil, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"TF" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/basketball) +"TK" = ( +/obj/structure/table/wood/bar, +/obj/structure/mirror{ + pixel_y = 28 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"TM" = ( +/mob/living/simple_animal/bot/medbot{ + desc = "When engaged in combat, the vanquishing of thine enemy can be the warrior's only concern."; + name = "Hattori"; + radio_key = null; + stationary_mode = 1 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"TO" = ( +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"TP" = ( +/obj/structure/urinal{ + pixel_y = 32 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/freezer, +/area/syndicate_mothership) +"Ud" = ( +/obj/effect/landmark/holding_facility, +/turf/open/floor/wood, +/area/centcom/holding) +"Ug" = ( +/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) +"Uh" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/rack, +/obj/item/nullrod/claymore/darkblade{ + damtype = "stamina"; + force = 30 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Uj" = ( +/obj/machinery/door/airlock/centcom{ + name = "Restroom"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"Ul" = ( +/obj/structure/table, +/obj/machinery/microwave{ + pixel_y = 4 + }, +/turf/open/floor/plasteel/cafeteria, +/area/syndicate_mothership) +"Um" = ( /obj/structure/closet/crate/hydroponics, /obj/item/shovel/spade, /obj/item/wirecutters, @@ -17560,264 +17847,6 @@ }, /turf/open/floor/plasteel/white, /area/centcom/holding) -"RK" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"RS" = ( -/obj/machinery/chem_master/condimaster{ - desc = "Used to separate out liquids - useful for purifying botanical extracts. Also dispenses condiments."; - name = "BrewMaster 2199"; - pixel_x = -4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"RT" = ( -/obj/structure/mineral_door/paperframe, -/turf/open/floor/wood, -/area/centcom/holding) -"RV" = ( -/obj/machinery/washing_machine, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"RX" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/one) -"Sa" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/one) -"Sc" = ( -/obj/machinery/door/airlock/wood, -/turf/open/floor/wood, -/area/centcom/holding) -"Sd" = ( -/obj/machinery/door/airlock/titanium{ - name = "Cockpit"; - req_access_txt = "109" - }, -/turf/open/floor/mineral/titanium, -/area/centcom/evac) -"Si" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/two) -"Sl" = ( -/obj/machinery/vending/hydroseeds, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"Sm" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/centcom/supplypod) -"Sp" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plasteel/dark, -/area/centcom/supplypod) -"Sq" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/wood, -/area/centcom/holding) -"Sw" = ( -/obj/structure/rack, -/obj/item/nullrod/claymore{ - damtype = "stamina"; - force = 30 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Sx" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/dark, -/area/centcom/supplypod) -"Sz" = ( -/obj/structure/closet/crate/bin, -/turf/open/floor/wood, -/area/centcom/holding) -"SF" = ( -/obj/machinery/biogenerator, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"SK" = ( -/turf/closed/indestructible{ - icon = 'icons/turf/walls/wood_wall.dmi'; - icon_state = "wood"; - smooth = 1 - }, -/area/centcom/holding) -"SM" = ( -/obj/machinery/plantgenes/seedvault, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"SR" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"SW" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"SZ" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/four) -"Ta" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/three) -"Te" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/four) -"Tn" = ( -/obj/machinery/light, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"Tw" = ( -/obj/structure/table, -/obj/item/reagent_containers/glass/beaker, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"TB" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/rack, -/obj/item/nullrod/claymore/darkblade{ - damtype = "stamina"; - force = 30 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"TV" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/carpet/black, -/area/centcom/holding) -"TY" = ( -/obj/structure/chair/wood/wings{ - dir = 4 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Ua" = ( -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"Uh" = ( -/obj/structure/curtain, -/obj/structure/window/reinforced/tinted{ - dir = 8 - }, -/obj/machinery/shower{ - pixel_y = 12 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"Uk" = ( -/obj/effect/landmark/holding_facility, -/turf/open/floor/wood, -/area/centcom/holding) -"Ul" = ( -/turf/closed/indestructible/riveted, -/area/ai_multicam_room) "Un" = ( /obj/machinery/door/airlock/centcom{ name = "Thunderdome"; @@ -17830,80 +17859,51 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plasteel, /area/tdome/tdomeobserve) -"Uq" = ( -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green, -/turf/open/floor/holofloor, -/area/holodeck/rec_center/firingrange) -"Ur" = ( -/obj/structure/table/wood/bar, -/obj/structure/safe/floor, -/obj/item/seeds/cherry/bomb, -/turf/open/floor/wood, -/area/centcom/holding) -"Us" = ( -/obj/machinery/vr_sleeper{ - dir = 4 - }, +"Uu" = ( /obj/machinery/light{ dir = 8 }, -/turf/open/floor/wood, -/area/centcom/holding) -"Ut" = ( -/obj/structure/mopbucket, -/obj/item/mop, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) +/turf/open/floor/plating, +/area/syndicate_mothership) "Uv" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/three) +/obj/structure/closet/crate/secure/gear, +/turf/open/floor/plating, +/area/syndicate_mothership) "Uw" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ +/obj/structure/chair{ dir = 4 }, +/turf/open/floor/mineral/plastitanium/red, +/area/centcom/evac) +"Uy" = ( +/obj/structure/flora/bush, +/obj/effect/light_emitter, +/turf/open/floor/plating/asteroid/snow/airless, +/area/syndicate_mothership) +"UC" = ( +/obj/machinery/vending/cola, /turf/open/floor/plasteel, -/area/centcom/supplypod/loading/four) -"UB" = ( -/obj/structure/flora/ausbushes/fullgrass, -/obj/structure/flora/ausbushes/ppflowers, -/obj/structure/flora/ausbushes/palebush, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/grass, +/area/centcom/supplypod) +"UE" = ( +/obj/structure/chair/stool/bar, +/turf/open/floor/wood, /area/centcom/holding) -"UI" = ( +"UG" = ( +/obj/structure/flora/tree/pine, +/obj/effect/light_emitter, +/obj/effect/light_emitter, +/turf/open/floor/plating/asteroid/snow/airless, +/area/syndicate_mothership) +"UL" = ( +/obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ - dir = 1 + dir = 4 }, /obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel, /area/centcom/supplypod) -"UN" = ( -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_y = 28; - use_power = 0 - }, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) "UO" = ( /obj/machinery/door/airlock/centcom{ name = "CentCom Security"; @@ -17918,145 +17918,196 @@ }, /turf/open/floor/plasteel, /area/centcom/control) -"UR" = ( -/turf/open/indestructible/binary, -/area/fabric_of_reality) -"UW" = ( -/obj/machinery/deepfryer, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"UX" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"UZ" = ( -/obj/singularity/wizard/mapped, -/turf/open/indestructible/binary, -/area/fabric_of_reality) -"Va" = ( -/obj/structure/chair/wood/wings{ - dir = 8 - }, -/obj/machinery/defibrillator_mount/loaded{ - pixel_y = 28 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Vb" = ( -/obj/machinery/door/airlock/wood{ - id_tag = "lmrestroom" - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Vf" = ( -/obj/structure/table, -/obj/item/radio/off, -/turf/open/floor/mineral/titanium/blue, -/area/centcom/evac) -"Vi" = ( -/obj/structure/ladder/unbreakable/binary, -/turf/open/indestructible/airblock, -/area/fabric_of_reality) -"Vm" = ( -/obj/structure/table/reinforced, -/obj/item/camera, -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"Vq" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/obj/item/reagent_containers/glass/beaker/large, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"Vs" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"VA" = ( -/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/red, -/area/centcom/evac) -"VC" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/obj/effect/turf_decal/tile/green, -/turf/open/floor/holofloor, -/area/holodeck/rec_center/firingrange) -"VD" = ( -/obj/structure/table, -/turf/open/floor/plasteel/cafeteria{ - dir = 2 - }, -/area/centcom/holding) -"VF" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"VJ" = ( -/obj/machinery/computer/arcade/battle, -/turf/open/floor/wood, -/area/centcom/holding) -"VL" = ( -/obj/structure/chair/wood/wings{ - dir = 1 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"VP" = ( -/obj/machinery/door/window/westleft, -/turf/open/floor/carpet/black, -/area/centcom/holding) -"VT" = ( -/obj/structure/closet/secure_closet/freezer/kitchen{ - locked = 0 - }, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"VW" = ( +"UQ" = ( /obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ dir = 8 }, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/one) +"UT" = ( +/obj/structure/chair/wood/wings{ + dir = 1 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"UV" = ( +/obj/machinery/computer/arcade, +/turf/open/floor/wood, +/area/centcom/holding) +"UW" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/three) +"UX" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ dir = 1 }, /turf/open/floor/plasteel, -/area/centcom/supplypod/loading/four) +/area/centcom/supplypod/loading/three) +"Va" = ( +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/basketball) +"Vb" = ( +/obj/structure/table/wood, +/obj/item/toy/figure/syndie, +/turf/open/floor/plasteel/dark, +/area/syndicate_mothership) +"Vc" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/two) +"Vf" = ( +/obj/structure/table, +/obj/item/assembly/flash/handheld, +/turf/open/floor/mineral/plastitanium/red, +/area/centcom/evac) +"Vj" = ( +/obj/structure/toilet{ + dir = 8 + }, +/obj/machinery/door/window{ + name = "Tactical Toilet"; + icon_state = "right"; + dir = 8; + opacity = 1 + }, +/obj/structure/window/reinforced/tinted, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/syndicate_mothership) +"Vm" = ( +/obj/machinery/gibber, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Vt" = ( +/obj/item/paper/fluff/stations/centcom/disk_memo, +/obj/structure/noticeboard{ + pixel_x = -32 + }, +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/syndicate_mothership) +"Vu" = ( +/obj/structure/flora/ausbushes/fernybush, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/palebush, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/light, +/turf/open/floor/grass, +/area/centcom/holding) +"Vv" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Vw" = ( +/obj/structure/table, +/obj/item/kitchen/fork, +/turf/open/floor/plasteel/cafeteria, +/area/syndicate_mothership) +"Vx" = ( +/obj/docking_port/stationary{ + dir = 4; + dwidth = 2; + height = 7; + id = "pod_away"; + name = "recovery ship"; + width = 5 + }, +/turf/open/space, +/area/space) +"Vz" = ( +/obj/machinery/vending/wallmed{ + name = "Emergency NanoMed"; + pixel_y = 28; + use_power = 0 + }, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"VA" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/holding) +"VB" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/one) +"VF" = ( +/obj/structure/rack, +/obj/item/nullrod/scythe/vibro{ + damtype = "stamina"; + force = 30 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"VO" = ( +/turf/closed/indestructible/riveted, +/area/centcom/supplypod) +"VP" = ( +/obj/structure/closet/cardboard, +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/plating, +/area/syndicate_mothership) +"VQ" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod) +"VR" = ( +/obj/machinery/light, +/turf/open/floor/plating, +/area/syndicate_mothership) +"VT" = ( +/obj/structure/table/wood, +/obj/item/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) +"VX" = ( +/obj/effect/landmark/shuttle_import, +/turf/open/space/basic, +/area/space) "Wb" = ( -/obj/machinery/door/window/eastright, +/obj/machinery/door/window/westleft, /turf/open/floor/carpet/black, /area/centcom/holding) "Wc" = ( @@ -18073,52 +18124,38 @@ }, /turf/open/floor/plasteel, /area/centcom/evac) -"Wh" = ( -/obj/machinery/autolathe, -/turf/open/floor/wood, -/area/centcom/holding) -"Wk" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "sink"; - pixel_y = 28 +"Wi" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 4 }, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"Wl" = ( -/obj/structure/table/wood/bar, -/obj/item/stack/sheet/glass/fifty, -/obj/item/stack/sheet/metal/fifty, -/obj/item/storage/toolbox/mechanical, -/obj/item/multitool, -/turf/open/floor/wood, -/area/centcom/holding) -"Wm" = ( -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/two) -"Wu" = ( -/obj/machinery/gibber, -/obj/machinery/light{ +/obj/effect/turf_decal/tile/brown{ dir = 1 }, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"Wv" = ( -/obj/structure/closet/secure_closet/freezer/fridge{ - locked = 0 - }, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"WA" = ( -/turf/closed/indestructible/riveted, +/turf/open/floor/plasteel, /area/centcom/supplypod) -"WB" = ( -/obj/machinery/vending/autodrobe{ - req_access_txt = "0" +"Wj" = ( +/obj/structure/closet/cardboard/metal, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 }, -/turf/open/floor/wood, -/area/centcom/holding) +/turf/open/floor/plating, +/area/syndicate_mothership) +"Wr" = ( +/turf/open/floor/plasteel/dark, +/area/centcom/supplypod) +"WC" = ( +/obj/structure/table/reinforced, +/obj/item/pen, +/turf/open/floor/mineral/plastitanium/red, +/area/centcom/evac) +"WH" = ( +/obj/structure/table/reinforced, +/obj/item/reagent_containers/food/drinks/bottle/whiskey{ + pixel_y = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod) "WJ" = ( /obj/machinery/door/airlock/centcom{ name = "Thunderdome Administration"; @@ -18133,19 +18170,25 @@ }, /turf/open/floor/plasteel, /area/tdome/tdomeadmin) -"WO" = ( -/obj/structure/flora/ausbushes/fernybush, -/obj/structure/flora/ausbushes/fullgrass, -/obj/structure/flora/ausbushes/ppflowers, -/obj/structure/flora/ausbushes/palebush, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/grass, -/area/centcom/holding) -"WP" = ( -/obj/machinery/light{ - dir = 1 +"WK" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/one) +"WM" = ( +/obj/structure/extinguisher_cabinet{ + pixel_y = 32 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"WO" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/turf/open/floor/plasteel, /area/centcom/supplypod) "WQ" = ( /obj/machinery/door/firedoor, @@ -18163,58 +18206,81 @@ /turf/open/floor/plasteel, /area/centcom/ferry) "WS" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/carpet/black, -/area/centcom/holding) -"WT" = ( -/obj/structure/closet{ - anchored = 1; - name = "Plasmaman suits" - }, -/obj/item/clothing/under/plasmaman, -/obj/item/clothing/under/plasmaman, -/obj/item/clothing/under/plasmaman, -/obj/item/clothing/under/plasmaman, -/obj/item/clothing/under/plasmaman, -/obj/item/clothing/head/helmet/space/plasmaman, -/obj/item/clothing/head/helmet/space/plasmaman, -/obj/item/clothing/head/helmet/space/plasmaman, -/obj/item/clothing/head/helmet/space/plasmaman, -/obj/item/clothing/head/helmet/space/plasmaman, +/obj/structure/closet/syndicate/personal, /turf/open/floor/wood, -/area/centcom/holding) -"WV" = ( -/obj/machinery/vr_sleeper{ - dir = 8 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Xa" = ( +/area/syndicate_mothership) +"WW" = ( +/obj/machinery/processor, +/turf/open/floor/plasteel/cafeteria, +/area/syndicate_mothership) +"Xd" = ( /obj/structure/flora/ausbushes/fernybush, /obj/structure/flora/ausbushes/fullgrass, -/obj/structure/flora/ausbushes/ppflowers, /obj/structure/flora/ausbushes/palebush, /obj/structure/window/reinforced/fulltile, -/obj/machinery/light, /turf/open/floor/grass, /area/centcom/holding) -"Xb" = ( -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/four) -"Xd" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/turf/open/floor/plasteel/cafeteria, +"Xe" = ( +/obj/machinery/vending/autodrobe{ + req_access_txt = "0" + }, +/turf/open/floor/wood, /area/centcom/holding) "Xg" = ( -/obj/machinery/vending/cigarette, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/basketball) +"Xk" = ( +/turf/open/floor/wood, +/area/centcom/holding) +"Xl" = ( +/obj/structure/closet/syndicate/personal, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/syndicate_mothership) +"Xn" = ( +/obj/machinery/door/airlock/wood{ + req_one_access_txt = "0" + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Xo" = ( +/obj/machinery/vending/dinnerware, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Xq" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plating, +/area/syndicate_mothership) +"Xr" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, /turf/open/floor/plasteel, -/area/centcom/supplypod) +/area/centcom/supplypod/loading/four) +"Xs" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plating, +/area/syndicate_mothership) "Xt" = ( /obj/machinery/door/airlock/centcom{ name = "CentCom Security"; @@ -18227,20 +18293,21 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plasteel, /area/centcom/control) -"Xv" = ( -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/one) -"Xw" = ( -/obj/structure/closet/secure_closet/freezer/meat{ - locked = 0 +"Xu" = ( +/obj/effect/turf_decal/tile/green{ + dir = 8 }, -/obj/item/reagent_containers/food/snacks/carpmeat, -/obj/item/reagent_containers/food/snacks/carpmeat, -/obj/item/reagent_containers/food/snacks/carpmeat, -/obj/item/reagent_containers/food/snacks/carpmeat, -/obj/item/reagent_containers/food/snacks/carpmeat, -/turf/open/floor/plasteel/cafeteria, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/firingrange) +"Xx" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/wood, /area/centcom/holding) "Xy" = ( /obj/machinery/door/airlock/external{ @@ -18254,49 +18321,99 @@ }, /turf/open/floor/plasteel, /area/centcom/ferry) -"XH" = ( -/obj/structure/table/wood, -/obj/item/camera/detective{ - desc = "A polaroid camera with extra capacity for social media marketing."; - name = "Professional camera" - }, -/obj/item/camera_film, -/obj/item/wallframe/newscaster, -/obj/item/paper_bin, -/obj/item/pen/fountain, -/turf/open/floor/wood, -/area/centcom/holding) -"XP" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 +"XE" = ( +/obj/machinery/door/airlock/centcom{ + name = "Kitchen"; + req_access_txt = "150" }, /turf/open/floor/plasteel, -/area/centcom/supplypod/loading/two) -"XQ" = ( -/obj/structure/chair/stool/bar, +/area/syndicate_mothership) +"XL" = ( +/obj/machinery/door/airlock/wood, /turf/open/floor/wood, /area/centcom/holding) -"Yc" = ( -/obj/structure/table/reinforced, -/obj/item/paper_bin, -/turf/open/floor/mineral/plastitanium/red, -/area/centcom/evac) -"Yh" = ( -/obj/machinery/modular_computer/console/preset/research, -/obj/machinery/light{ - dir = 1 +"XM" = ( +/obj/structure/chair/wood/wings{ + dir = 4 }, /turf/open/floor/wood, /area/centcom/holding) -"Yp" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/plasteel/cafeteria, +"XT" = ( +/obj/structure/table/wood, +/obj/item/reagent_containers/food/snacks/sashimi, +/turf/open/floor/wood, /area/centcom/holding) +"XU" = ( +/obj/machinery/computer/secure_data{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/centcom/evac) +"XX" = ( +/obj/structure/table/wood, +/obj/item/reagent_containers/food/drinks/bottle/sake, +/turf/open/floor/wood, +/area/centcom/holding) +"XY" = ( +/obj/machinery/door/poddoor/shutters{ + id = "nukeop_ready"; + name = "shuttle dock" + }, +/turf/open/floor/plating, +/area/syndicate_mothership) +"Yc" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating, +/area/syndicate_mothership) +"Yd" = ( +/obj/structure/table/reinforced, +/obj/item/storage/fancy/donut_box, +/turf/open/floor/mineral/plastitanium/red, +/area/centcom/evac) +"Ye" = ( +/obj/structure/chair/wood/wings{ + dir = 8 + }, +/obj/machinery/defibrillator_mount/loaded{ + pixel_y = 28 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Yf" = ( +/obj/structure/table/wood, +/obj/item/reagent_containers/food/snacks/chawanmushi, +/turf/open/floor/wood, +/area/centcom/holding) +"Yg" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plating, +/area/syndicate_mothership) +"Yh" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -27 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Yi" = ( +/obj/structure/dresser, +/turf/open/floor/plasteel/dark, +/area/syndicate_mothership) +"Ym" = ( +/obj/machinery/computer/arcade/orion_trail, +/turf/open/floor/wood, +/area/centcom/holding) +"Yo" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Ys" = ( +/obj/structure/table/reinforced, +/turf/open/floor/mineral/plastitanium/red, +/area/centcom/evac) "Yt" = ( /obj/machinery/door/airlock/centcom{ name = "CentCom Security"; @@ -18311,111 +18428,134 @@ }, /turf/open/floor/plasteel, /area/tdome/tdomeobserve) -"Yv" = ( -/obj/machinery/recharge_station, -/turf/open/floor/plasteel/white, +"Yu" = ( +/obj/structure/closet/secure_closet/freezer/fridge{ + locked = 0 + }, +/turf/open/floor/plasteel/cafeteria, /area/centcom/holding) +"Yw" = ( +/turf/closed/indestructible/fakedoor{ + name = "External Access" + }, +/area/syndicate_mothership) "Yy" = ( /obj/machinery/door/airlock/titanium, /turf/open/floor/mineral/titanium, /area/centcom/evac) -"YA" = ( +"YJ" = ( +/obj/item/reagent_containers/food/condiment/enzyme, +/obj/item/reagent_containers/food/drinks/shaker, +/obj/item/book/manual/wiki/barman_recipes, +/obj/item/book/granter/action/drink_fling, /obj/structure/closet/crate, -/obj/item/vending_refill/autodrobe, -/obj/item/stack/sheet/paperframes/fifty, -/obj/item/stack/sheet/paperframes/fifty, -/obj/item/storage/fancy/candle_box, -/obj/item/storage/fancy/candle_box, -/obj/item/storage/fancy/candle_box, -/obj/item/storage/box/lights/mixed, -/turf/open/floor/wood, -/area/centcom/holding) -"YE" = ( -/turf/open/floor/carpet/black, +/turf/open/floor/plasteel/cafeteria, /area/centcom/holding) "YL" = ( +/obj/machinery/vending/clothing, +/turf/open/floor/wood, +/area/centcom/holding) +"YN" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/mob/living/simple_animal/chicken, +/turf/open/floor/grass, +/area/centcom/holding) +"YQ" = ( +/obj/structure/table, +/obj/item/reagent_containers/glass/beaker, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"YU" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/carpet/black, +/area/centcom/holding) +"YV" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/rack, +/obj/item/nullrod/claymore/saber{ + damtype = "stamina"; + force = 30 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Za" = ( +/obj/machinery/door/airlock/wood{ + id_tag = "lmrestroom" + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Zc" = ( +/turf/open/indestructible/binary, +/area/space) +"Zh" = ( +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-10" + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Zi" = ( +/turf/open/floor/plasteel, +/area/centcom/supplypod/podStorage) +"Zj" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod) +"Zr" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/dark, +/area/syndicate_mothership) +"Zt" = ( +/obj/machinery/vr_sleeper{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/wood, +/area/centcom/holding) +"Zw" = ( +/obj/structure/bed, +/obj/item/bedsheet/syndie, +/turf/open/floor/wood, +/area/syndicate_mothership) +"Zx" = ( +/mob/living/simple_animal/bot/medbot{ + desc = "A little medical robot. You can make out the word \"sincerity\" on its chassis."; + name = "Hijikata"; + radio_key = null; + stationary_mode = 1 + }, +/turf/open/floor/wood, +/area/centcom/holding) +"Zz" = ( +/obj/effect/landmark/start/nukeop_leader, +/turf/open/floor/wood, +/area/syndicate_mothership) +"ZF" = ( /obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ dir = 4 }, /turf/open/floor/plasteel, -/area/centcom/supplypod/loading/two) -"YP" = ( -/obj/structure/closet/secure_closet/hydroponics{ - locked = 0 - }, -/obj/effect/turf_decal/tile/green{ +/area/centcom/supplypod/loading/four) +"ZH" = ( +/obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/centcom/holding) -"YQ" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/centcom/supplypod) -"YX" = ( -/obj/structure/mineral_door/paperframe{ - name = "Dojo" - }, -/turf/open/floor/wood, -/area/centcom/holding) -"YZ" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/food/snacks/chawanmushi, -/turf/open/floor/wood, -/area/centcom/holding) -"Za" = ( -/obj/structure/table, -/obj/machinery/microwave{ - pixel_x = -3; - pixel_y = 6 - }, -/turf/open/floor/plasteel/cafeteria{ - dir = 2 - }, -/area/centcom/holding) -"Zb" = ( -/obj/machinery/smartfridge, -/turf/closed/indestructible{ - icon = 'icons/turf/walls/wood_wall.dmi'; - icon_state = "wood"; - smooth = 1 - }, -/area/centcom/holding) -"Ze" = ( -/obj/machinery/computer/secure_data{ - dir = 4 - }, -/turf/open/floor/mineral/plastitanium/red, -/area/centcom/evac) -"Zi" = ( -/obj/structure/table/wood/fancy, -/obj/item/candle/infinite{ - pixel_y = 6 - }, -/turf/open/floor/wood, -/area/centcom/holding) -"Zj" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/centcom/supplypod) -"Zr" = ( -/turf/open/indestructible/binary, -/area/space) -"ZC" = ( -/turf/open/floor/plasteel, -/area/centcom/supplypod/loading/three) +/turf/open/floor/plating, +/area/syndicate_mothership) "ZJ" = ( /obj/machinery/door/airlock/centcom{ name = "CentCom Security"; @@ -18430,47 +18570,50 @@ }, /turf/open/floor/plasteel, /area/centcom/evac) -"ZL" = ( -/obj/machinery/vr_sleeper{ +"ZK" = ( +/obj/machinery/computer/telecrystals/boss{ dir = 1 }, -/obj/machinery/light, -/turf/open/floor/wood, -/area/centcom/holding) -"ZO" = ( -/turf/open/floor/plasteel, -/area/centcom/supplypod) -"ZS" = ( -/obj/structure/window/paperframe{ - CanAtmosPass = 0 +/obj/effect/turf_decal/stripes/line{ + dir = 5 }, -/turf/open/floor/wood, -/area/centcom/holding) -"ZT" = ( -/obj/structure/reagent_dispensers/cooking_oil, -/turf/open/floor/plasteel/cafeteria, -/area/centcom/holding) -"ZU" = ( -/obj/machinery/hydroponics/constructable, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ +/turf/open/floor/mineral/plastitanium/red, +/area/syndicate_mothership) +"ZP" = ( +/obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/green{ +/obj/machinery/light{ dir = 8 }, -/turf/open/floor/plasteel/white, +/turf/open/floor/plasteel/dark, +/area/centcom/supplypod) +"ZQ" = ( +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/two) +"ZT" = ( +/mob/living/simple_animal/cow, +/turf/open/floor/grass, +/area/centcom/holding) +"ZU" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/carpet/black, /area/centcom/holding) "ZV" = ( -/obj/item/reagent_containers/food/condiment/enzyme, -/obj/item/reagent_containers/food/drinks/shaker, -/obj/item/book/manual/wiki/barman_recipes, -/obj/item/book/granter/action/drink_fling, -/obj/structure/closet/crate, -/turf/open/floor/plasteel/cafeteria, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/one) +"ZW" = ( +/turf/open/floor/plasteel/white, /area/centcom/holding) "ZX" = ( /obj/machinery/door/airlock/centcom{ @@ -26922,10 +27065,10 @@ aa lI lI lI -Zr -Zr -Zr -Zr +Zc +Zc +Zc +Zc lI lI lI @@ -27181,9 +27324,9 @@ lI lI lI lI -Zr -Zr -Zr +Zc +Zc +Zc lI lI lI @@ -27196,10 +27339,10 @@ lI lI lI lI -Zr +Zc lI -Zr -Zr +Zc +Zc lI lI lI @@ -27453,9 +27596,9 @@ lI lI lI lI -Zr -Zr -Zr +Zc +Zc +Zc lI lI lI @@ -27698,7 +27841,7 @@ lI lI lI lI -Zr +Zc lI lI lI @@ -27709,17 +27852,17 @@ lI lI lI lI -Zr -Zr -Zr +Zc +Zc +Zc lI lI lI lI lI lI -Zr -Zr +Zc +Zc lI aa aa @@ -27837,519 +27980,6 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -aa -aa -aa -aa -aa -aa -aa -aa -aa -lI -lI -lI -lI -lI -lI -lI -lI -lI -Zr -lI -lI -lI -lI -lI -lI -lI -lI -lI -Zr -lI -lI -lI -lI -lI -lI -lI -lI -Zr -lI -lI -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 -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -aa -aa -aa -aa -aa -aa -aa -aa -aa -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -lI -Zr -lI -lI -lI -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 mB hh hh @@ -28406,6 +28036,262 @@ hh hh hh hh +aa +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +aa +aa +aa +aa +aa +aa +aa +aa +aa +lI +lI +lI +lI +lI +lI +lI +lI +lI +Zc +lI +lI +lI +lI +lI +lI +lI +lI +lI +Zc +lI +lI +lI +lI +lI +lI +lI +lI +Zc +lI +lI +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 +hh +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl hh aa lI @@ -28468,23 +28354,280 @@ lI lI lI lI -UR -UR -UR -MT -MT -MT -MT -MT -Rz -MT -MT -MT -UR -MT -MT -MT -MT +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +Zc +lI +lI +lI +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 +aa +hh +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hh +aa +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +lI +aa +aa +aa +aa +aa +aa +aa +aa +aa +lI +lI +lI +lI +lI +lI +lI +MB +MB +MB +To +To +To +To +To +MH +To +To +To +MB +To +To +To +To lI lI lI @@ -28607,6 +28750,7 @@ aa aa aa aa +aa hh hl hl @@ -28662,7 +28806,6 @@ hl hl hl hl -hl hh aa lI @@ -28725,23 +28868,23 @@ lI lI lI lI -MT -MT -UR -UR -MT -MT -MT -MT -MT -MT -MT -UR -UR -MT -MT -MT -MT +To +To +MB +MB +To +To +To +To +To +To +To +MB +MB +To +To +To +To lI lI lI @@ -28864,6 +29007,7 @@ aa aa aa aa +aa hh hl hl @@ -28919,7 +29063,6 @@ hl hl hl hl -hl hh aa lI @@ -28982,23 +29125,23 @@ lI lI lI lI -MT -MT -MT -UR -UR -MT -MT -MT -MT -MT -MT -UR -MT -MT -MT -MT -MT +To +To +To +MB +MB +To +To +To +To +To +To +MB +To +To +To +To +To lI lI lI @@ -29121,6 +29264,7 @@ aa aa aa aa +aa hh hl hl @@ -29176,7 +29320,6 @@ hl hl hl hl -hl hh aa lI @@ -29239,23 +29382,23 @@ lI lI lI lI -MT -MT -MT -MT -UR -UR -MT -MT -MT -MT -MT -UR -MT -MT -MT -UR -UR +To +To +To +To +MB +MB +To +To +To +To +To +MB +To +To +To +MB +MB lI lI lI @@ -29378,6 +29521,7 @@ aa aa aa aa +aa hh hl hl @@ -29433,7 +29577,6 @@ hl hl hl hl -hl hh aa aa @@ -29496,23 +29639,23 @@ lI lI lI lI -MT -MT -MT -MT -MT -UR -UR -MT -MT -UR -UR -UR -MT -MT -UR -UR -MT +To +To +To +To +To +MB +MB +To +To +MB +MB +MB +To +To +MB +MB +To lI lI lI @@ -29635,6 +29778,7 @@ aa aa aa aa +aa hh hl hl @@ -29690,7 +29834,43 @@ hl hl hl hl -hl +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh hh aa aa @@ -29709,43 +29889,6 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa lI lI lI @@ -29753,23 +29896,23 @@ lI lI lI lI -MT -MT -MT -MT -MT -MT -UR -UR -MT -UR -UR -UR -UR -UR -UR -MT -MT +To +To +To +To +To +To +MB +MB +To +MB +MB +MB +MB +MB +MB +To +To lI lI lI @@ -29892,6 +30035,7 @@ aa aa aa aa +aa hh hl hl @@ -29948,6 +30092,42 @@ hl hl hl hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +my +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +kt +MD +kt +kt +kt +kt +kt +kt +kt +kt +kt +kt +hl hh aa aa @@ -29966,43 +30146,6 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa lI lI lI @@ -30010,28 +30153,28 @@ lI lI lI lI -UR -UR -MT -MT -MT -MT -MT -UR -MT -MT -UR -MT -MT -MT -MT -MT -MT +MB +MB +To +To +To +To +To +MB +To +To +MB +To +To +To +To +To +To lI lI lI -Zr -Zr +Zc +Zc lI lI aa @@ -30149,100 +30292,100 @@ aa aa aa aa -hh -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -aa -aa -aa -aa aa +hh +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +mz +hl +my +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +kt +kt +kt +kt +kt +kt +kt +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +kt +hl +hh aa aa aa @@ -30267,28 +30410,28 @@ lI lI lI lI -MT -UR -MT -MT -MT -MT -MT -UR -UR -UR -MT -MT -MT -MT -MT -MT -MT +To +MB +To +To +To +To +To +MB +MB +MB +To +To +To +To +To +To +To lI lI -Zr -Zr -Zr +Zc +Zc +Zc lI lI aa @@ -30406,6 +30549,7 @@ aa aa aa aa +aa hh hl hl @@ -30464,6 +30608,11 @@ hl hl hl hl +nx +hl +hl +hl +nx hl hl hl @@ -30471,27 +30620,26 @@ hl hl hl hl -hl -hl -hl -hl -hl -hl -hl -hl +my hl hl kt -MD -kt -kt -kt -kt -kt -kt -kt -kt -kt +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl kt hl hh @@ -30512,11 +30660,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -30524,28 +30667,28 @@ lI lI lI lI -Vi -MT -MT -MT -MT -MT -MT -UR -UZ -UR -MT -MT -MT -MT -MT -MT -ub +NF +To +To +To +To +To +To +MB +Qm +MB +To +To +To +To +To +To +AG lI lI lI -Zr -Zr +Zc +Zc lI lI aa @@ -30663,6 +30806,7 @@ aa aa aa aa +aa hh hl hl @@ -30722,9 +30866,13 @@ hl hl hl hl +mA hl hl hl +mz +hl +hl hl hl hl @@ -30733,12 +30881,12 @@ hl hl hl kt -kt -kt -kt -kt -kt -kt +hl +hl +hl +hl +hl +hl hl hl hl @@ -30769,11 +30917,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -30781,28 +30924,28 @@ lI lI lI lI -MT -MT -MT -MT -UR -UR -UR -UR -MT -UR -UR -MT -MT -MT -MT -MT -MT +To +To +To +To +MB +MB +MB +MB +To +MB +MB +To +To +To +To +To +To lI lI lI -Zr -Zr +Zc +Zc lI lI aa @@ -30920,6 +31063,7 @@ aa aa aa aa +aa hh hl hl @@ -30976,6 +31120,7 @@ hl hl hl hl +mz hl hl hl @@ -30986,9 +31131,12 @@ hl hl hl hl -hl -hl -hl +kt +kt +kt +kt +kt +kt kt hl hl @@ -31026,11 +31174,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -31038,29 +31181,29 @@ lI lI lI lI -MT -MT -MT -UR -UR -UR -UR -MT -MT -MT -UR -MT -MT -MT -MT -MT -MT +To +To +To +MB +MB +MB +MB +To +To +To +MB +To +To +To +To +To +To lI lI lI lI -Zr -Zr +Zc +Zc lI aa aa @@ -31177,6 +31320,7 @@ aa aa aa aa +aa hh hl hl @@ -31237,6 +31381,11 @@ hl hl hl hl +mz +hl +hl +hl +hl hl hl hl @@ -31246,7 +31395,6 @@ hl hl hl hl -kt hl hl hl @@ -31283,11 +31431,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -31295,29 +31438,29 @@ lI lI lI lI -MT -MT -UR -UR -UR -MT -MT -MT -MT -MT -UR -UR -MT -MT -MT -MT -MT +To +To +MB +MB +MB +To +To +To +To +To +MB +MB +To +To +To +To +To lI lI lI lI lI -Zr +Zc lI aa aa @@ -31434,6 +31577,7 @@ aa aa aa aa +aa hh hl hl @@ -31491,6 +31635,32 @@ hl hl hl hl +nx +hl +hl +hl +hl +my +hl +hl +my +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl hl hl hl @@ -31499,28 +31669,6 @@ hl hl kt kt -kt -kt -kt -kt -kt -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -kt hl hh aa @@ -31540,11 +31688,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -31552,23 +31695,23 @@ lI lI lI lI -MT -UR -UR -MT -UR -MT -MT -MT -MT -MT -MT -UR -UR -UR -MT -MT -MT +To +MB +MB +To +MB +To +To +To +To +To +To +MB +MB +MB +To +To +To lI lI lI @@ -31691,6 +31834,7 @@ aa aa aa aa +aa hh hl hl @@ -31752,7 +31896,10 @@ hl hl hl hl -my +hl +hl +hl +hl hl hl hl @@ -31779,6 +31926,7 @@ hl hl kt hl +hl hh aa aa @@ -31797,11 +31945,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -31809,23 +31952,23 @@ lI lI lI lI -UR -UR -MT -MT -UR -UR -MT -MT -MT -MT -MT -MT -MT -UR -UR -MT -MT +MB +MB +To +To +MB +MB +To +To +To +To +To +To +To +MB +MB +To +To lI lI lI @@ -31948,6 +32091,7 @@ aa aa aa aa +aa hh hl hl @@ -32003,12 +32147,16 @@ hl hl hl hl +my +hl +hl +mA hl hl hl hl hl -hl +mA hl hl hl @@ -32034,7 +32182,7 @@ hl hl hl kt -kt +hl hl hh aa @@ -32054,11 +32202,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -32066,23 +32209,23 @@ lI lI lI lI -MT -MT -MT -UR -UR -UR -MT -MT -MT -MT -MT -MT -MT -MT -UR -UR -MT +To +To +To +MB +MB +MB +To +To +To +To +To +To +To +To +MB +MB +To lI lI lI @@ -32205,6 +32348,7 @@ aa aa aa aa +aa hh hl hl @@ -32266,6 +32410,10 @@ hl hl hl hl +mz +hl +hl +hl hl hl hl @@ -32311,11 +32459,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -32323,23 +32466,23 @@ lI lI lI lI -MT -MT -MT -UR -MT -MT -MT -MT -MT -MT -MT -MT -MT -MT -MT -UR -UR +To +To +To +MB +To +To +To +To +To +To +To +To +To +To +To +MB +MB lI lI lI @@ -32462,6 +32605,7 @@ aa aa aa aa +aa hh hl hl @@ -32520,6 +32664,7 @@ hl hl hl hl +mz hl hl hl @@ -32547,9 +32692,12 @@ hl hl hl hl +hl +hl +hl kt hl -hl +my hh aa aa @@ -32568,11 +32716,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -32580,23 +32723,23 @@ lI lI lI lI -MT -MT -MT -UR -MT -MT -MT -MT -MT -UR -MT -MT -MT -MT -MT -MT -UR +To +To +To +MB +To +To +To +To +To +MB +To +To +To +To +To +To +MB lI lI lI @@ -32719,6 +32862,7 @@ aa aa aa aa +aa hh hl hl @@ -32804,6 +32948,10 @@ hl hl hl hl +hl +hl +hl +hl kt hl hl @@ -32825,11 +32973,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -32976,6 +33119,7 @@ aa aa aa aa +aa hh hl hl @@ -33036,7 +33180,11 @@ hl hl hl hl -my +hl +mA +hl +hl +hl hl hl hl @@ -33062,7 +33210,7 @@ hl hl hl kt -hl +kt hl hh aa @@ -33082,11 +33230,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -33233,6 +33376,7 @@ aa aa aa aa +aa hh hl hl @@ -33292,11 +33436,16 @@ hl hl hl hl +mz hl hl hl hl hl +mA +hl +hl +hl hl hl hl @@ -33320,7 +33469,6 @@ hl hl kt hl -hl hh aa aa @@ -33339,16 +33487,11 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI lI -Zr +Zc lI lI lI @@ -33490,6 +33633,7 @@ aa aa aa aa +aa hh hl hl @@ -33552,31 +33696,35 @@ hl hl hl hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl +mz hl hl hl hl kt kt +kt +kt +kt +kt +kt +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +kt hl hh aa @@ -33596,16 +33744,11 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI -Zr -Zr +Zc +Zc lI lI lI @@ -33616,7 +33759,7 @@ lI lI lI lI -Zr +Zc lI lI lI @@ -33626,9 +33769,9 @@ lI lI lI lI -Zr -Zr -Zr +Zc +Zc +Zc lI lI lI @@ -33747,6 +33890,7 @@ aa aa aa aa +aa hh hl hl @@ -33804,6 +33948,7 @@ hl hl hl hl +mz hl hl hl @@ -33819,6 +33964,9 @@ hl hl hl hl +kt +hl +hl hl hl hl @@ -33853,16 +34001,11 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI -Zr -Zr +Zc +Zc lI lI lI @@ -33884,7 +34027,7 @@ lI lI lI lI -Zr +Zc lI lI lI @@ -34004,6 +34147,7 @@ aa aa aa aa +aa hh hl hl @@ -34063,21 +34207,25 @@ hl hl hl hl +my +hl +hl +hl +hl hl mz +mA +hl +nx hl my -kt -kt -kt -kt -kt -kt +hl +hl kt hl hl hl -hl +My hl hl hl @@ -34110,23 +34258,18 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI lI -Zr +Zc lI lI lI lI lI lI -Zr +Zc lI lI lI @@ -34261,6 +34404,7 @@ aa aa aa aa +aa hh hl hl @@ -34316,27 +34460,31 @@ hl hl hl hl +Tz +Tz +Tz +Tz +Tz +Tz +Tz +Tz +Tz +Tz hl hl hl hl hl -mA -hl -hl -hl -hl -hl -nx hl +mz hl kt -hl -hl -hl -hl -hl -hl +kt +kt +ku +PP +ku +kt hl hl hl @@ -34367,11 +34515,6 @@ aa aa aa aa -aa -aa -aa -aa -aa lI lI lI @@ -34518,6 +34661,7 @@ aa aa aa aa +aa hh hl hl @@ -34573,37 +34717,41 @@ hl hl hl hl +QV +QV +QV +QV +QV +QV +QV +QV +QV +Uy +hl +hl +mz hl hl hl hl -hl -hl -hl -hl -hl -hl -hl -hl +mA hl hl kt -hl -hl -hl -My -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl +ku +MI +ku +kt +kt +kt +kt +kt +kt +kt +kt +kt +kt +kt kt hl hh @@ -34672,11 +34820,6 @@ aa aa aa aa -aa -aa -aa -aa -aa "} (64,1,1) = {" aa @@ -34775,6 +34918,7 @@ aa aa aa aa +aa hh hl hl @@ -34830,38 +34974,42 @@ hl hl hl hl -kt -kt -kt -kt -kt +Ug +ZH +MI +MI +Uu +MI +MI +Uv +QV +Tz +hl +hl +hl hl mz -mA -hl -hl -hl -hl -hl -hl +nx +Tz +Tz kt kt kt -nz -uJ -nz -kt -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -kt +ku +zn +ku +Tz +Tz +Tz +Tz +QV +QV +QV +QV +QV +QV +Tz +mz hl hh aa @@ -34881,34 +35029,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di aa aa aa @@ -35032,6 +35175,7 @@ aa aa aa aa +aa hh hl hl @@ -35087,39 +35231,43 @@ hl hl hl hl -ku -ku -ku -ku -kt +Ug +ZH +MI +MI +MI +MI +MI +MI +QV +Tz +hl +mz +nx hl hl +Tz +Tz +QV +QV +QV +QV +QV +XY +QV +QV +QV +QV +QV +QV +Ul +PD +Oc +MS +QV +Uy hl -hl -hl -hl -hl -hl -hl -hl -hl -kt -nz -ll -nz -kt -kt -kt -kt -kt -kt -kt -kt -kt -kt -kt -kt -hl +hh hh aa aa @@ -35138,34 +35286,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -35289,6 +35432,7 @@ aa aa aa aa +aa hh hl hl @@ -35344,39 +35488,42 @@ hl hl hl hl -kv -kR -ll -ku -kt -hl -hl -hl -hl -hl -mA -hl -kt -kt -kt -kt -kt -nz +Ug +ZH +MI +MI +MI +MI +MI +MI +QV +Tz +UG +Tz +Tz +Tz +qa +Tz +QV uJ -nz -kt +PS +Vt rd -kt -kt -hl -hl -hl -hl -hl -hl -hl -hl -hl +TO +TO +zM +TO +zu +OV +Nu +XE +PD +PD +PD +yV +QV +hh +hh hh aa aa @@ -35396,33 +35543,29 @@ aa aa aa aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -35546,519 +35689,6 @@ aa aa aa aa -hh -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -kv -kR -ll -ku -kt -hl -hl -mz -hl -hl -hl -kt -kt -ku -ku -ku -ku -ku -ud -ku -ku -ku -ku -kt -kt -hl -hl -hl -hl -hl -hl -hl -hl -hh -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul -aa -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 -hh -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -kv -kR -ll -ku -kt -mz -hl -hl -my -hl -hl -oW -ku -ng -qJ -re -se -pZ -pZ -uL -vu -wl -ku -ku -kt -hl -hl -hl -hl -hl -hl -hl -hl -hh -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul -aa -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 hh hl @@ -36115,40 +35745,554 @@ hl hl hl ki -kv -kR -lm +Ug +ZH +MI +MI +MI +MI +MI +VR +QV +Tz +Tz ku -kt -hl -hl -hl -hl -hl -hl -kt +Yw +ku +Fg +Tz +QV +ud +TO +TO +vu +vu +TO +TO +wX +Oa +Nu +QB +QV +Dk +PD +PD +QR +QV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di +aa +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 +aa +hh +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +Ug +ZH +MI +MI +MI +MI +MI +MI +QV +Tz +Fg +ku +MI +ku +Tz +Tz ku -pX pZ -pZ -rf -rf -pZ -rf -vv +TO +vu +wl +Qt +wX +TO +wX +VT +Nu +ZK +QV +Vw +PD +PD +PD +Ou +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di +aa +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 +aa +hh +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +hl +Ug +ZH +MI +MI +MI +MI +MI +MI +QV +QV +QV +QV +Yw +QV +QV +QV +QV +TO +TO +vu wm si -ku -kt -my -nx -hl -mz -hl -hl -BY -hl -hh +wX +TO +wX +Oa +Nu +sZ +QV +zU +PD +Oe +WW +QV aa aa aa @@ -36170,30 +36314,29 @@ aa aa aa aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -36317,6 +36460,7 @@ aa aa aa aa +aa hh hl hl @@ -36372,40 +36516,40 @@ hl hl hl hl -kv -kR -ll -ku -kt -kt -kt -kt -kt -kt -kt -kt +Ug +ZH +MI +MI +MI +MI +MI +MI +OZ +Rz +MI nz -pY -pZ -rf -sf +MI +nz +MI +MI te -pZ -rf +RZ +TO vw -wn -wV -ku -kt -hl -mz -hl -hl -hl -BY -Cp -BY -hh +vu +vu +TO +TO +TO +Si +Nu +pU +QV +QV +QV +QV +QV +QV aa aa aa @@ -36427,30 +36571,29 @@ aa aa aa aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -36574,6 +36717,7 @@ aa aa aa aa +aa hh hl hl @@ -36629,40 +36773,39 @@ hl hl hl hl -kv -kR -ll +Ug +ZH +MI +MI +MI +MI +MI +MI +QV +QV ku ku ku -ku -ku -ku -ku -ku -ku -ku -pZ -pZ +QV +QV +QV +QV +QV rf -sg -tf -pZ -rf -vv -wn -wW -ku -oW -hl -my -mz -nx -hl -hl -BY -hl -hh +TO +TO +TO +TO +TO +TO +TO +Do +QV +QV +OS +wp +Bl +QV aa aa aa @@ -36685,29 +36828,29 @@ aa aa aa aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -36831,6 +36974,7 @@ aa aa aa aa +aa hh hl hl @@ -36886,40 +37030,39 @@ hl hl hl hl -kv -kR -ll -ll -ll -ll -ll -ny -ll -ll -ll -ll -pF +Ug +ZH +MI +MI +MI +MI +MI +MI +QV +Tz +Tz +Tz qa -pZ -rg -rf -rf -pZ -pZ -vx -wo +Fg +Tz +Tz +qa +QV +NV +TO +TO wX -ku -kt -ma -oW -kt -kt -hl -hl -hl -hl -hh +wX +wX +wX +TO +TO +rc +wp +wp +wp +Aa +QV aa aa aa @@ -36942,29 +37085,29 @@ aa aa aa aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -37088,6 +37231,7 @@ aa aa aa aa +aa hh hl hl @@ -37143,40 +37287,39 @@ hl hl hl hl -kv -kR -ll -ku -ku -nz -nz -nz -ku -ku -ku -ku -ku -ku -qK -pZ -pZ -pZ -pZ -pZ -pZ -pZ -ku -ku -ku -nz -ku -ku -hh -hh -hh -hh -hh -hh +Ug +ZH +MI +MI +MI +MI +MI +VR +QV +Tz +mz +BY +hl +hl +qa +Tz +Tz +QV +Tj +TO +TO +QB +JK +JK +QQ +TO +SV +QV +jO +wp +wp +QP +QV aa aa aa @@ -37199,29 +37342,29 @@ aa aa aa aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -37345,6 +37488,7 @@ aa aa aa aa +aa hh hl hl @@ -37400,34 +37544,39 @@ hl hl hl hl -kv -kR -ll -ku -kt -mC -nh -ma -kt -ma -ma -kt -kt -ku -qL -pZ -sh -sh -sh -sh -pZ -pZ -wY -xG -xG -xG -zx -ku +Ug +ZH +MI +MI +MI +MI +MI +MI +QV +Uy +BY +Cp +BY +hl +Uy +QV +QV +QV +QV +QV +OB +QV +QV +QV +QV +QV +QV +QV +zs +wp +GA +wp +Pn aa aa aa @@ -37450,35 +37599,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -37602,6 +37745,7 @@ aa aa aa aa +aa hh hl hl @@ -37657,34 +37801,39 @@ hl hl hl hl -kv -kR -lm +Ug +ZH +MI +MI +MI +MI +MI +MI +QV +Tz +mz +BY +nx +mA +Tz ku -kt -mz -hl -hl -mz -hl -hl -mz -ma -ku -qM -pZ -si -tg tg +Rl uM -pZ +QV +wp wp -ku -xG -xG xG +Xl +Xl zx -ku +Yi +QV +QV +QV +QV +PP +QV aa aa aa @@ -37707,35 +37856,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Nt -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +pW +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -37859,6 +38002,7 @@ aa aa aa aa +aa hh hl hl @@ -37914,34 +38058,39 @@ hl hl hl hl -kv -kR -ll -ku -kt +Ug +ZH +MI +MI +yP +MI +MI +MI +QV +Tz +mA hl hl -mz -hl -mz -hl -hl -pG -ku -ku -rh -ku -ku -ku -nz -uJ -nz -ku -xH -xG -xG -zx -ku +qa +Tz +QV +TP +Qq +Qq +Uj +wp +wp +wp +wp +wp +wp +Zr +QV +WS +Nu +QV +MI +QV aa aa aa @@ -37964,35 +38113,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -38116,6 +38259,7 @@ aa aa aa aa +aa hh hl hl @@ -38171,34 +38315,39 @@ hl hl hl hl -kv -kR -ll -ku -kt +QV +QV +QV +QV +QV +QV +QV +QV +QV +Tz hl mz hl -mA -hl -hl -mz -kt -ku -qN -ri -ri -ku -ku -nz -ll -nz -ku +Tz +hh +QV +QV +Vj +SD +QV +GA +wp xI -xG -xG -zx -ku +xI +xI +xI +wp +AD +Zz +Pw +QV +MI +QV aa aa aa @@ -38221,35 +38370,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -38373,6 +38516,7 @@ aa aa aa aa +aa hh hl hl @@ -38428,34 +38572,39 @@ hl hl hl hl -kv -kR -ll -ku -ma +Tz +Tz +Tz +Tz +Tz +Tz +Tz +Tz +Tz +Fg hl hl +nx hl -mz -hl -hl -mz -ma -ku -qO -ri -sj -ku -ku -nz -ll -nz -ku +hh +aa +QV +QV +QV +QV +QV +Vb xJ -xG -xG -zx -ku +xJ +xJ +xJ +Sb +QV +Zw +MF +QV +MI +QV aa aa aa @@ -38478,35 +38627,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -38630,6 +38773,7 @@ aa aa aa aa +aa hh hl hl @@ -38685,34 +38829,43 @@ hl hl hl hl -ku -ku -ku -ku -kt +hl +hl +hl +hl +nx +hl +hl hl mz -mA +nx hl +mz hl -mA -hl -pG -nz -qP -rj -ku -ku -ku -nz -ll -nz -ku -xK -xG -yX -zy -ku +hh +hh +aa +aa +aa +aa +aa +QV +QV +QV +QV +QV +QV +QV +QV +QV +QV +QV +MI +QV +QV +QV +QV +QV aa aa aa @@ -38731,39 +38884,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -38887,6 +39030,7 @@ aa aa aa aa +aa hh hl hl @@ -38942,34 +39086,43 @@ hl hl hl hl -kt -kt -kt -kt -kt hl hl -hl -mA mz -hl mA -kt -ku -ku -ku -ku -ku -ku -nz -ll -nz -ku -ku -ku -ku +hl +hl +hl +hl +hl +my +hl +hl +hl +hh +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +QV +MI +MI +MI ku +MI ku +MI +MI +MI +QV aa aa aa @@ -38988,39 +39141,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -39144,6 +39287,7 @@ aa aa aa aa +aa hh hl hl @@ -39200,31 +39344,42 @@ hl hl hl hl -hl -hl -hl +nx hl hl hl mz +mA hl hl hl +nx +hl mz -ma hh aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +QV +MI +VP +rb ku -sk -sk -sk -nz -ll -nz -sk -sk -sk +PP ku +rb +Wj +MI +QV aa aa aa @@ -39243,41 +39398,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -39401,6 +39544,7 @@ aa aa aa aa +aa hh hl hl @@ -39464,24 +39608,35 @@ hl hl hl hl -hl mz hl -mA +hl +hl hl hh +hh aa -ku -sk -th -ue -nz -uJ -nz -ue -xL -sk -ku +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +QV +tl +Sg +MI +MI +MI +MI +MI +Mk +Rb +QV aa aa aa @@ -39500,41 +39655,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -39658,6 +39801,7 @@ aa aa aa aa +aa hh hl hl @@ -39717,28 +39861,39 @@ hl hl hl hl +my hl hl hl -mA hl hl -mA hl mz +hl +hl hh aa -ku -sl -ti -sk -sk -sk -sk -sk -xM -yk -ku +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +QV +Xs +MI +MI +MI +MI +MI +MI +MI +ZH +QV aa aa aa @@ -39757,41 +39912,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -39915,6 +40058,7 @@ aa aa aa aa +aa hh hl hl @@ -39971,31 +40115,42 @@ hl hl hl hl -hl -hl -hl -hl -hl -hl -hl -hl mz hl hl hl +hl +mz +hl +hl +hl +hl +hl +hl +hl hh aa -ku -sm -sk -sk -sk -sk -sk -sk -sk -yl -ku +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +QV +qI +MI +MI +MI +MI +MI +MI +MI +Xq +QV aa aa aa @@ -40014,41 +40169,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -40172,6 +40315,7 @@ aa aa aa aa +aa hh hl hl @@ -40231,28 +40375,39 @@ hl hl hl hl +mz hl hl hl hl -hl -hl -hl +mz hl hl hh +hh +hh aa -ku -sn -sk -sk -sk -sk -sk -sk -sk -ym -ku +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +QV +Xs +MI +MI +MI +MI +MI +MI +sc +ZH +QV aa aa aa @@ -40271,41 +40426,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -Ul -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -MP -Ul +Di +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Qe +Di aa aa aa @@ -40429,6 +40572,7 @@ aa aa aa aa +aa hh hl hl @@ -40486,11 +40630,10 @@ hl hl hl hl +my hl hl -hl -hl -hl +my hl hl hl @@ -40499,17 +40642,29 @@ hl hl hh aa -ku -sm -sk -sk -sk -sk -sk -sk -xN -yl -ku +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +QV +Xs +MI +MI +MI +MI +MI +MI +MI +ZH +QV aa aa aa @@ -40528,41 +40683,29 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul -Ul +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di +Di aa aa aa @@ -40686,6 +40829,7 @@ aa aa aa aa +aa hh hl hl @@ -40748,25 +40892,13 @@ hl hl hl hl -hl -hl +mA hl hl hl hl hh aa -ku -sm -sk -sk -sk -sk -sk -sk -sk -yl -ku aa aa aa @@ -40779,6 +40911,17 @@ aa aa aa aa +QV +Yc +MI +MI +MI +MI +MI +MI +MI +ZH +QV aa aa aa @@ -40892,7 +41035,8 @@ aa aa aa aa -rY +VX +aa aa aa aa @@ -41004,26 +41148,13 @@ hl hl hl hl -hl -hl -hl +mz hl hl hl hl hh -aa -ku -so -sk -sk -sk -sk -sk -sk -sk -yl -ku +hh aa aa aa @@ -41037,6 +41168,18 @@ aa aa aa aa +QV +Oz +tm +MI +MI +MI +MI +MI +zR +Yg +QV +aa aa aa aa @@ -41200,6 +41343,7 @@ aa aa aa aa +aa hh hl hl @@ -41257,10 +41401,8 @@ hl hl hl hl -hl -hl -hl -hl +mz +mA hl hl hl @@ -41270,17 +41412,6 @@ hl hl hh aa -ku -sp -tn -sk -sk -sk -sk -sk -xO -xP -ku aa aa aa @@ -41294,6 +41425,18 @@ aa aa aa aa +QV +MI +Oz +PJ +PJ +PJ +PJ +PJ +Yg +MI +QV +aa aa aa aa @@ -41457,6 +41600,7 @@ aa aa aa aa +aa hh hl hl @@ -41521,23 +41665,10 @@ hl hl hl hl -hl -hl -hl -hl +hh +hh hh aa -ku -sk -sp -ui -ui -ui -ui -ui -xP -sk -ku aa aa aa @@ -41551,6 +41682,18 @@ aa aa aa aa +QV +QV +QV +QV +QV +QV +QV +QV +QV +QV +QV +aa aa aa aa @@ -41714,6 +41857,7 @@ aa aa aa aa +aa hh hl hl @@ -41775,26 +41919,25 @@ hl hl hl hl +nx hl -hl -hl -hl -hl -hl -hl +hh hh aa -ku -ku -ku -ku -ku -ku -ku -ku -ku -ku -ku +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa aa aa aa @@ -41971,6 +42114,7 @@ aa aa aa aa +aa hh hl hl @@ -42032,14 +42176,13 @@ hl hl hl hl -hl -hl -hl -hl -hl -hl -hl hh +hh +hh +aa +aa +aa +aa aa aa aa @@ -42228,6 +42371,7 @@ aa aa aa aa +aa hh hl hl @@ -42287,16 +42431,15 @@ hl hl hl hl -hl -hl -hl -hl -hl -hl -hl -hl -hl hh +hh +hh +aa +aa +aa +aa +aa +aa aa aa aa @@ -42485,74 +42628,66 @@ aa aa aa aa +aa +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh +hh hh -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl hh aa aa @@ -42569,38 +42704,46 @@ aa aa aa aa -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK +aa +aa +aa +aa +aa +aa +aa +aa +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd aa aa aa @@ -42742,75 +42885,6 @@ aa aa aa aa -hh -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hl -hh aa aa aa @@ -42826,38 +42900,107 @@ aa aa aa aa -SK -ZU -ZU -ZU -AD -ZU -ZU -ZU -SK -sY -Nf -RF -SK -xa -Zi -VL -Dj -wg -wg -TY -ZS -Sq -Qb -wg -ZS -Ob -Us -Ob -Ob -Us -Ob -SK +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Nd +PO +PO +PO +Sw +PO +PO +PO +Nd +QI +VA +Op +Nd +Rm +Tn +UT +yd +Xk +Xk +XM +NT +UV +CV +Xk +NT +CT +oV +CT +CT +oV +CT +Nd aa aa aa @@ -42999,75 +43142,6 @@ aa aa aa aa -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh -hh aa aa aa @@ -43083,38 +43157,107 @@ aa aa aa aa -SK -we -Vs -Vs -Vs -Vs -Vs -Vs -SK -NP -Ua -Ua -Vb -wg -wg -wg -WO -wg -wg -Zi -ZS -QZ -wg -wg -ZS -wg -wg -wg -wg -wg -wg -SK +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Nd +HQ +PY +PY +PY +PY +PY +PY +Nd +Pq +ZW +ZW +Za +Xk +Xk +Xk +Tu +Xk +Xk +Tn +NT +RQ +Xk +Xk +NT +Xk +Xk +Xk +Xk +Xk +Xk +Nd aa aa aa @@ -43340,38 +43483,38 @@ aa aa aa aa -SK -pU -RS -Vq -PX -Sl -SF -Tn -SK -RV -Ua -Ua -SK -wg -wg -wg -wg -wg -wg +Nd +Mu +QH +Bo +vs +Rj +PI +Rd +Nd +Pa +ZW +ZW +Nd +Xk +Xk +Xk +Xk +Xk +Xk GY -ZS -Sq -Qb -wg -ZS -wg -pW -wg -Ra -wg -ZL -SK +NT +UV +CV +Xk +NT +Xk +PF +Xk +Px +Xk +Zt +Nd aa aa aa @@ -43597,38 +43740,38 @@ aa aa aa aa -SK -Vs -Vs -Vs -Vs -Vs -Vs -Vs -SK -Uh -Ua -Yv -SK -wg -wg -wg -Sz -wg -WO -Xa -SK +Nd +PY +PY +PY +PY +PY +PY +PY +Nd +SB +ZW +Nw +Nd +Xk +Xk +Xk +Ph +Xk +Tu +Vu +Nd Gs -wg -wg -Ri -wg -pW -wg -Ra -wg -pW -SK +Xk +Xk +RL +Xk +PF +Xk +Px +Xk +PF +Nd aa aa aa @@ -43854,38 +43997,38 @@ aa aa aa aa -SK -SM -QK -AC -Vs -RI -YP -Vs -SK -SK -SK -SK -SK -wg -wg -TY -OX -wg -wg -TY -ZS -VJ -Qb -wg -ZS -wg -pW -wg -Ra -wg -ZL -SK +Nd +pE +NJ +SW +PY +Um +Nn +PY +Nd +Nd +Nd +Nd +Nd +Xk +Xk +XM +QL +Xk +Xk +XM +NT +PX +CV +Xk +NT +Xk +PF +Xk +Px +Xk +Zt +Nd aa aa aa @@ -44111,38 +44254,38 @@ aa aa aa aa -SK -SK -SK -SK -Sc -SK -SK -Zb -SK -wg -zt -wg -Ow -wg -wg -Zi -WO -wg -wg -Zi -ZS -Qe -wg -wg -ZS -wg -wg -wg -wg -wg -wg -SK +Nd +Nd +Nd +Nd +XL +Nd +Nd +py +Nd +Xk +Yo +Xk +Xn +Xk +Xk +Tn +Tu +Xk +Xk +Tn +NT +Zh +Xk +Xk +NT +Xk +Xk +Xk +Xk +Xk +Xk +Nd aa aa aa @@ -44165,10 +44308,10 @@ KH KS La Lb -Yc -Ze -QY -NK +FZ +XU +Vf +ON KH Lv Lv @@ -44368,38 +44511,38 @@ aa aa aa aa -SK -Wh -wg -zt -wg -wg -wg -wg -Dk -wg -SK -SK -SK +Nd +PL +Xk +Yo +Xk +Xk +Xk +Xk +Yh +Xk +Nd +Nd +Nd Gs -wg +Xk GY -WO -wg -wg +Tu +Xk +Xk GY -ZS -Pj -Qb -wg -ZS -WV -Of -WV -WV -Of -WV -SK +NT +Ym +CV +Xk +NT +Dj +Qu +Dj +Dj +Qu +Dj +Nd aa aa aa @@ -44422,10 +44565,10 @@ KH KU Lb KV -OG -Oq -PA -PA +Yd +uG +Qo +Qo KH KV KV @@ -44625,38 +44768,38 @@ aa aa aa aa -SK -Wl -wg -sb -yO -SK -Wu +Nd +Tq +Xk +MG +YN +Nd +Vm Fh -Xw -SK -SK +zV +Nd +Nd Fa -Rf -wg -wg -wg -wg -wg -wg +KT +Xk +Xk +Xk +Xk +Xk +Xk HH -SK -wg -wg -wg -SK -SK -SK -SK -SK -SK -SK -SK +Nd +Xk +Xk +Xk +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd aa aa aa @@ -44679,10 +44822,10 @@ KO KV KV KV -Ry -Bo -PA -PA +WC +Uw +Qo +Qo KH Lv Lv @@ -44690,7 +44833,7 @@ KV Lv Lv KH -Vf +LE LH LN Lw @@ -44882,38 +45025,38 @@ aa aa aa aa -SK -wg -wg -QV -Nb -SK -Rb +Nd +Xk +Xk +Rh +Mm +Nd +MT Fh -Wv -SK +Yu +Nd Fb -YE -Rf -wg -wg -YE -YE -YE -YE -YE -RT -wg -wg -wg -ZS -NJ -Bm -MA -MA -zX -yg -SK +Sd +KT +Xk +Xk +Sd +Sd +Sd +Sd +Sd +Re +Xk +Xk +Xk +NT +vt +YV +OU +OU +RS +VF +Nd aa aa aa @@ -44936,10 +45079,10 @@ KH KW Lb KV -LE -QQ -LE -VA +Ys +Ni +Ys +xa Lt KH KH @@ -44947,7 +45090,7 @@ Yy KH KH KH -Qa +TA KV LO Lw @@ -45139,38 +45282,38 @@ aa aa aa aa -SK -wg -wg -QV -qG -SK -Oh +Nd +Xk +Xk +Rh +ZT +Nd +Pr Fh -VT -SK +QW +Nd Fc -YE -Rf -wg -wg -YE -YE -YE -YE -YE -SK +Sd +KT +Xk +Xk +Sd +Sd +Sd +Sd +Sd +Nd Gs -Qf -wg -YX -wg -wg -wg -wg -wg -wg -SK +Zx +Xk +OL +Xk +Xk +Xk +Xk +Xk +Xk +Nd aa aa aa @@ -45197,15 +45340,15 @@ KV KV KV KV -JE +wq KV KV KV KV KV -Sd +Qb KV -AF +yg LP Lw aa @@ -45396,38 +45539,38 @@ aa aa aa aa -SK -SK -Sc -SK -SK -SK -Wk +Nd +Nd +XL +Nd +Nd +Nd +JE Fh -Tw -SK -Bn -YE +YQ +Nd +MR +Sd FW -wg -wg -YE -YE -YE -YE -YE -RT -wg -wg -wg -ZS -Ru -TY -wg -TY -TY -wg -SK +Xk +Xk +Sd +Sd +Sd +Sd +Sd +Re +Xk +Xk +Xk +NT +So +XM +Xk +XM +XM +Xk +Nd aa aa aa @@ -45461,7 +45604,7 @@ KV Lb LA KH -QO +Sf KV LQ Lw @@ -45653,38 +45796,38 @@ aa aa aa aa -SK -Ur -wg -zt -wg -SK -Za +Nd +yM +Xk +Yo +Xk +Nd +SG Fh -Yp -SK -SK -YE +Vv +Nd +Nd +Sd FX -wg -wg -wg -wg -wg -wg +Xk +Xk +Xk +Xk +Xk +Xk HH -SK -UX -Uk -Uk -ZS -WS -Oc -VP -Oc -TV -wg -SK +Nd +WM +Ud +Ud +NT +Nj +Po +Wb +Po +ZU +Xk +Nd aa aa aa @@ -45719,7 +45862,7 @@ Lb LB KH LG -Pf +LJ LR Lw aa @@ -45910,38 +46053,38 @@ aa aa aa aa -SK -vr -wg -wg -wg -SK -Rq +Nd +OG +Xk +Xk +Xk +Nd +zX Fh -Xd -SK -SK -SK -SK +pS +Nd +Nd +Nd +Nd Gs -wg -TY -WO -wg -wg -TY -ZS -wg -Uk -Uk -ZS -PY -YE -YE -YE -xC -wg -SK +Xk +XM +Tu +Xk +Xk +XM +NT +Xk +Ud +Ud +NT +YU +Sd +Sd +Sd +MM +Xk +Nd aa aa aa @@ -46167,38 +46310,38 @@ aa aa aa aa -SK -Oo -wg -wg -wg -SK -UW +Nd +TK +Xk +Xk +Xk +Nd +QA Fh -VD +Nv ED -zt -YZ -XQ -wg -wg -Zi -Ou -wg -wg -Zi -ZS -PU -Uk -Uk -ZS -PY -YE -YE -YE -xC -tZ -SK +Yo +Yf +UE +Xk +Xk +Tn +Xd +Xk +Xk +Tn +NT +Ro +Ud +Ud +NT +YU +Sd +Sd +Sd +MM +TM +Nd aa aa aa @@ -46424,38 +46567,38 @@ aa aa aa aa -SK -Rc -wg -wg -wg -SK -Py +Nd +YL +Xk +Xk +Xk +Nd +Xo Fh Fh -Zb -wg -Mk -XQ -wg -wg +py +Xk +SY +UE +Xk +Xk GY -WO -wg -wg +Tu +Xk +Xk GY -ZS -WT -Uk -Uk -ZS -PY -YE -YE -YE -xC -wg -SK +NT +Tw +Ud +Ud +NT +YU +Sd +Sd +Sd +MM +Xk +Nd aa aa aa @@ -46681,38 +46824,38 @@ aa aa aa aa -SK -WB -wg -wg -wg -SK -ZT +Nd +Xe +Xk +Xk +Xk +Nd +TB Fh Fh -tb -wg -MH -XQ -wg -wg -wg -Sz -wg -UB -Xa -SK -Gs -Uk -Uk -ZS -QG -vq -Wb -vq BV -wg -SK +Xk +XT +UE +Xk +Xk +Xk +Ph +Xk +Qk +Vu +Nd +Gs +Ud +Ud +NT +Mt +PA +Ra +PA +Pl +Xk +Nd aa aa aa @@ -46742,7 +46885,7 @@ Ls aa aa aa -wi +Vx aa aa aa @@ -46938,38 +47081,38 @@ aa aa aa aa -SK -Yh -wg -wg -wg -SK -UN +Nd +Ny +Xk +Xk +Xk +Nd +Vz Fh -ZV -PB -wg -Mk -XQ -wg -wg -wg -wg -wg -wg -TY -ZS -wg -wg -wg -ZS -Va +YJ +QT +Xk +SY +UE +Xk +Xk +Xk +Xk +Xk +Xk +XM +NT +Xk +Xk +Xk +NT +Ye GY -wg +Xk GY GY -wg -SK +Xk +Nd aa aa aa @@ -47195,38 +47338,38 @@ aa aa aa aa -SK -Od -Ox -wg -wg -Sc +Nd +Bs +Ri +Xk +Xk +XL Fh Fh Fh -Sc -wg -Fi -XQ -wg -wg -wg -WO -wg -wg -Zi -ZS -wg -wg -wg -YX -wg -wg -wg -wg -wg -wg -SK +XL +Xk +XX +UE +Xk +Xk +Xk +Tu +Xk +Xk +Tn +NT +Xk +Xk +Xk +OL +Xk +Xk +Xk +Xk +Xk +Xk +Nd aa aa aa @@ -47452,38 +47595,38 @@ aa aa aa aa -SK -XH -wg -yN -YA -SK -Ut -VF -Nc -SK +Nd +SU +Xk +Xx +Nm +Nd +SN +pV +Tr +Nd Fj -SK -SK -wZ -Zi -VL +Nd +Nd +Fi +Tn +UT Hm -wg -wg +Xk +Xk GY -ZS -wg -wg -wg -ZS -NJ -px -Qv -Rp -TB -Sw -SK +NT +Xk +Xk +Xk +NT +vt +Mx +ND +Tb +Uh +tW +Nd aa aa aa @@ -47709,38 +47852,38 @@ aa aa aa aa -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK -SK +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd +Nd aa aa aa @@ -64688,8 +64831,8 @@ Ep GU GM Hw -HE -HQ +oS +oT HX Ie Iq @@ -65962,9 +66105,9 @@ lN iu iC io -OS -QE -OS +Wr +MP +Wr Ep Fx FR @@ -66219,9 +66362,9 @@ iu io UO io -OS -OS -OS +Wr +Wr +Wr Ep Fy FE @@ -66476,9 +66619,9 @@ CO Cc Cc DK -OS -OS -OS +Wr +Wr +Wr Ep Fz FS @@ -66733,9 +66876,9 @@ qx qx Wc qx -WA -Nq -WA +VO +pz +VO Ep Ep Ep @@ -66989,21 +67132,21 @@ qz qx Dc Cc -WA -Op -ZO -OS -YQ -Dy -YQ -OS -OS -OS +VO +yN QE -OS -OS -Bp -WA +Wr +td +ZP +td +Wr +Wr +Wr +MP +Wr +Wr +Rf +VO ET EU Ev @@ -67246,28 +67389,28 @@ qz qx Dd Cc -WA -Vm -ZO -Re -Pt -IO -Xg -CU -OS -OS -OS -OS -OS -OD -WA -WA -WA -WA -WA -WA -WA -WA +VO +PG +QE +Ov +yc +UC +MC +Oh +Wr +Wr +Wr +Wr +Wr +Mv +VO +VO +VO +VO +VO +VO +VO +VO Iv Iv Iv @@ -67503,28 +67646,28 @@ Cd qx De Dx -WA -WA -WA -Lk -Lk -WA -WA -WA -OS -OS -WA -WA -WA -WA -WA -WA -WA -WA -pz -pz -pz -WA +VO +VO +VO +vo +vo +VO +VO +VO +Wr +Wr +VO +VO +VO +VO +VO +VO +VO +VO +Zi +Zi +Zi +VO aa aa aa @@ -67760,28 +67903,28 @@ qy qx Dc Cc -WA -RX -RX -RX -RX -RX -AI -WA -OS -OS -WA -MI -MI -MI -MI -MI -Uv -WA -pz -pz -pz -WA +VO +Nc +Nc +Nc +Nc +Nc +ZV +VO +Wr +Wr +VO +uf +uf +uf +uf +uf +UX +VO +Zi +Zi +Zi +VO aa aa aa @@ -68017,28 +68160,28 @@ qV qx qx sL -WA -JV -JV -JV -JV -Xv -Sa -WA -YQ -YQ -WA -Di -ZC -Di -ZC -Di -Ta -WA -pz -pz -pz -NE +VO +sY +sY +sY +sY +QK +VB +VO +td +td +VO +wh +Qa +wh +Qa +wh +UW +VO +Zi +Zi +Zi +tY aa aa aa @@ -68274,28 +68417,28 @@ Ce CP Df Cc -WA -Xv -JV -JV -JV -Xv -Sa -Lk -UI -UI -Lk -Di -ZC -Di -ZC -Di -Ta -WA -pz -pz -pz -NE +VO +QK +sY +sY +sY +QK +VB +vo +SF +SF +vo +wh +Qa +wh +Qa +wh +UW +VO +Zi +Zi +Zi +tY aa aa aa @@ -68531,28 +68674,28 @@ Cf Cc Cc Cc -WA -Xv -Xv -Xv -Xv -Xv -Sa -Lk -Pr -Pr -Lk -Di -ZC -Di -ZC -Di -Ta -WA -pz -pz -pz -WA +VO +QK +QK +QK +QK +QK +VB +vo +WO +WO +vo +wh +Qa +wh +Qa +wh +UW +VO +Zi +Zi +Zi +VO aa aa aa @@ -68788,28 +68931,28 @@ Cg Cc Cc Dz -WA -JV -JV -JV -JV -Xv -Sa -WA -Sm -Sm -WA -Di -Di -Di -Di -Di -Ta -WA -pz -pz -pz -WA +VO +sY +sY +sY +sY +QK +VB +VO +Ob +Ob +VO +wh +wh +wh +wh +wh +UW +VO +Zi +Zi +Zi +VO aa aa aa @@ -69045,28 +69188,28 @@ Cf Cc Dg DA -WA -Qs -Qs -Qs -Qs -Qs -RC -WA -WP -Sx -WA -zZ -zZ -zZ -zZ -zZ -yd -WA -pz -pz -pz -WA +VO +WK +WK +WK +WK +WK +UQ +VO +Pg +Ps +VO +Om +Om +Om +Om +Om +Ga +VO +Zi +Zi +Zi +VO aa aa aa @@ -69302,28 +69445,28 @@ Ch CR Dh DB -WA -WA -WA -Lk -Lk -WA -WA -SR -UI -UI -Ol -WA -WA -Lk -Lk -WA -WA -WA -pz -pz -pz -WA +VO +VO +VO +vo +vo +VO +VO +Zj +SF +SF +OE +VO +VO +vo +vo +VO +VO +VO +Zi +Zi +Zi +VO aa aa aa @@ -69559,28 +69702,28 @@ qV qx qx qx -WA -OS -Re -SW -qI -CU +VO +Wr +Ov +Ha +IK +Oh +MP +VQ QE -py -ZO -ZO -qI QE -Re -SW -qI -CU -MN -Sp -pz -pz -pz -NE +IK +MP +Ov +Ha +IK +Oh +PU +OH +Zi +Zi +Zi +tY aa aa aa @@ -69814,30 +69957,30 @@ AY rS qz qx -OS -OS -OS -OS -Re -SW -qI -CU -Zj -py -ZO -ZO -qI -Zj -Re -SW -qI -CU -ZO -Sp -pz -pz -pz -NE +Wr +Wr +Wr +Wr +Ov +Ha +IK +Oh +OM +VQ +QE +QE +IK +OM +Ov +Ha +IK +Oh +QE +OH +Zi +Zi +Zi +tY aa aa aa @@ -70071,30 +70214,30 @@ Bb qV Cd qx -WP -OS -WA -WA -WA -Lk -Lk -WA -WA -RK -Pr -Pr -Rg -WA -WA -Lk -Lk -WA -WA -WA -pz -pz -pz -WA +Pg +Wr +VO +VO +VO +vo +vo +VO +VO +Wi +WO +WO +UL +VO +VO +vo +vo +VO +VO +VO +Zi +Zi +Zi +VO aa aa aa @@ -70328,30 +70471,30 @@ AW qx qy qx -OS -OS -WA -Si -Si -Si -Si -Si -Kz -WA -WP -Sx -WA -SZ -SZ -SZ -SZ -SZ -VW -WA -pz -pz -pz -WA +Wr +Wr +VO +Nz +Nz +Nz +Nz +Nz +oU +VO +Pg +Ps +VO +Sy +Sy +Sy +Sy +Sy +Pv +VO +Zi +Zi +Zi +VO aa aa aa @@ -70585,30 +70728,30 @@ Bc qx qz qx -OS -OS -WA -Wm -Po -Wm -Wm -Wm -Fd -WA -YQ -YQ -WA -AG -AG -AG -Xb -Xb -JJ -WA -pz -pz -pz -WA +Wr +Wr +VO +Or +ZQ +Or +Or +Or +MU +VO +td +td +VO +PZ +PZ +PZ +RR +RR +Sh +VO +Zi +Zi +Zi +VO aa aa aa @@ -70842,30 +70985,30 @@ Bd qx qx qx -Og -ZO -WA -Wm -Po -Wm -Po -Wm -Fd -Lk -UI -UI -Lk -Xb -Xb -AG -Xb -Xb -JJ -WA -pz -pz -pz -WA +WH +QE +VO +Or +ZQ +Or +ZQ +Or +MU +vo +SF +SF +vo +RR +RR +PZ +RR +RR +Sh +VO +Zi +Zi +Zi +VO aa aa aa @@ -71099,30 +71242,30 @@ sV qx qx qx -Kf -Kf -WA -Wm -Po -Wm -Po -Wm -Fd -Lk -Pr -Pr -Lk -Xb -Xb -AG -Xb -Xb -JJ -WA -pz -pz -pz -WA +SP +SP +VO +Or +ZQ +Or +ZQ +Or +MU +vo +WO +WO +vo +RR +RR +PZ +RR +RR +Sh +VO +Zi +Zi +Zi +VO aa aa aa @@ -71358,27 +71501,27 @@ aa aa aa aa -WA -Wm -Wm -Wm -Po -Wm -Fd -WA -Sm -Sm -WA -AG -AG -AG -AG -AG -JJ -WA -NE -NE -WA +VO +Or +Or +Or +ZQ +Or +MU +VO +Ob +Ob +VO +PZ +PZ +PZ +PZ +PZ +Sh +VO +tY +tY +VO aa aa aa @@ -71615,24 +71758,24 @@ aa aa aa aa -WA -YL -YL -YL -YL -YL -XP -WA -ZO -ZO -WA -Te -Te -Te -Te -Te -Uw -WA +VO +SI +SI +SI +SI +SI +Vc +VO +QE +QE +VO +ZF +ZF +ZF +ZF +ZF +Xr +VO aa aa aa @@ -71872,24 +72015,24 @@ aa aa aa aa -WA -WA -WA -WA -WA -WA -WA -WA -Sp -Sp -WA -WA -WA -WA -WA -WA -WA -WA +VO +VO +VO +VO +VO +VO +VO +VO +OH +OH +VO +VO +VO +VO +VO +VO +VO +VO aa aa aa @@ -78124,16 +78267,16 @@ ap aB ap bj -OO -Qq +Xg +TF bX bJ cj cw bJ cR -Ql -zM +uc +SH bj du dO @@ -78388,7 +78531,7 @@ bJ cj cw cG -Pe +vy bJ df bj @@ -78645,7 +78788,7 @@ bJ cj cw bJ -Pe +vy cH dg bj @@ -78895,16 +79038,16 @@ ap ap ap bj -Nm -Cm -Cm -Cm +RD +Va +Va +Va ck cx cH cH cH -Pb +QX bj dt dR @@ -82513,7 +82656,7 @@ dB dB dB dB -VC +PV fx ab ab @@ -83541,7 +83684,7 @@ dF dF dF dF -Uq +Xu fx ab fK diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm index 7744b24d0f..e5749764e0 100644 --- a/code/__DEFINES/citadel_defines.dm +++ b/code/__DEFINES/citadel_defines.dm @@ -128,3 +128,6 @@ //component stuff #define COMSIG_COMBAT_TOGGLED "combatmode_toggled" //called by combat mode toggle on all equipped items. args: (mob/user, combatmode) + +//belly sound pref things +#define NORMIE_HEARCHECK 4 diff --git a/code/__DEFINES/inventory.dm b/code/__DEFINES/inventory.dm index d33d9fe4f5..74b5ef0396 100644 --- a/code/__DEFINES/inventory.dm +++ b/code/__DEFINES/inventory.dm @@ -98,6 +98,7 @@ #define HIDEHAIR (1<<8) #define HIDEFACIALHAIR (1<<9) #define HIDENECK (1<<10) +#define HIDETAUR (1<<11) //gotta hide that snowflake //bitflags for clothing coverage - also used for limbs #define HEAD (1<<0) @@ -130,6 +131,11 @@ #define NORMAL_SUIT_STYLE 0 #define DIGITIGRADE_SUIT_STYLE 1 +#define NOT_TAURIC 0 +#define SNEK_TAURIC 1 +#define PAW_TAURIC 2 +#define HOOF_TAURIC 3 + //flags for outfits that have mutantrace variants (try not to use this): Currently only needed if you're trying to add tight fitting bootyshorts #define NO_MUTANTRACE_VARIATION 0 #define MUTANTRACE_VARIATION 1 diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index 5451bd30e4..8493676542 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -66,8 +66,8 @@ Will print: "/mob/living/carbon/human/death" (you can optionally embed it in a s #define SHOES_LAYER 19 #define GLOVES_LAYER 18 #define EARS_LAYER 17 -#define SUIT_LAYER 16 -#define BODY_TAUR_LAYER 15 +#define BODY_TAUR_LAYER 16 +#define SUIT_LAYER 15 #define GENITALS_FRONT_LAYER 14 //Draws some genitalia above clothes and the TAUR body if need be. #define GLASSES_LAYER 13 #define BELT_LAYER 12 //Possible make this an overlay of somethign required to wear a belt? diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index b7d467c385..62e1cf1b90 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -258,3 +258,5 @@ // /obj/item/bodypart on_mob_life() retval flag #define BODYPART_LIFE_UPDATE_HEALTH (1<<0) + +#define HUMAN_FIRE_STACK_ICON_NUM 3 diff --git a/code/__DEFINES/tgs.dm b/code/__DEFINES/tgs.dm index faa620613c..d24054a24c 100644 --- a/code/__DEFINES/tgs.dm +++ b/code/__DEFINES/tgs.dm @@ -10,6 +10,10 @@ //Comment this out once you've filled in the below #error TGS API unconfigured +//Uncomment this if you wish to allow the game to interact with TGS 3 +//This will raise the minimum required security level of your game to TGS_SECURITY_TRUSTED due to it utilizing call()() +//#define TGS_V3_API + //Required interfaces (fill in with your codebase equivalent): //create a global variable named `Name` and set it to `Value` @@ -47,7 +51,21 @@ #define TGS_EVENT_PORT_SWAP -2 //before a port change is about to happen, extra parameter is new port #define TGS_EVENT_REBOOT_MODE_CHANGE -1 //before a reboot mode change, extras parameters are the current and new reboot mode enums -//TODO +//See the descriptions for these codes here: https://github.com/tgstation/tgstation-server/blob/master/src/Tgstation.Server.Host/Components/EventType.cs +#define TGS_EVENT_REPO_RESET_ORIGIN 0 +#define TGS_EVENT_REPO_CHECKOUT 1 +#define TGS_EVENT_REPO_FETCH 2 +#define TGS_EVENT_REPO_MERGE_PULL_REQUEST 3 +#define TGS_EVENT_REPO_PRE_SYNCHRONIZE 4 +#define TGS_EVENT_BYOND_INSTALL_START 5 +#define TGS_EVENT_BYOND_INSTALL_FAIL 6 +#define TGS_EVENT_BYOND_ACTIVE_VERSION_CHANGE 7 +#define TGS_EVENT_COMPILE_START 8 +#define TGS_EVENT_COMPILE_CANCELLED 9 +#define TGS_EVENT_COMPILE_FAILURE 10 +#define TGS_EVENT_COMPILE_COMPLETE 11 +#define TGS_EVENT_INSTANCE_AUTO_UPDATE_START 12 +#define TGS_EVENT_REPO_MERGE_CONFLICT 13 //OTHER ENUMS @@ -74,8 +92,8 @@ /world/proc/TgsInitializationComplete() return -//Put this somewhere in /world/Topic(T, Addr, Master, Keys) that is always run before T is modified -#define TGS_TOPIC var/tgs_topic_return = TgsTopic(T); if(tgs_topic_return) return tgs_topic_return +//Put this at the start of /world/Topic() +#define TGS_TOPIC var/tgs_topic_return = TgsTopic(args[1]); if(tgs_topic_return) return tgs_topic_return //Call this at the beginning of world/Reboot(reason) /world/proc/TgsReboot() @@ -177,7 +195,7 @@ //Gets a list of connected tgs_chat_channel /world/proc/TgsChatChannelInfo() return - + //Sends a message to connected game chats //message: The message to send //channels: optional channels to limit the broadcast to @@ -201,24 +219,24 @@ The MIT License Copyright (c) 2017 Jordan Brown -Permission is hereby granted, free of charge, -to any person obtaining a copy of this software and -associated documentation files (the "Software"), to -deal in the Software without restriction, including -without limitation the rights to use, copy, modify, -merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom -the Software is furnished to do so, +Permission is hereby granted, free of charge, +to any person obtaining a copy of this software and +associated documentation files (the "Software"), to +deal in the Software without restriction, including +without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom +the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR -ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR +ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ \ No newline at end of file diff --git a/code/_compile_options.dm b/code/_compile_options.dm index 67bbe24e38..3ec2510cc7 100644 --- a/code/_compile_options.dm +++ b/code/_compile_options.dm @@ -3,6 +3,11 @@ //#define DATUMVAR_DEBUGGING_MODE //Enables the ability to cache datum vars and retrieve later for debugging which vars changed. +// Comment this out if you are debugging problems that might be obscured by custom error handling in world/Error +#ifdef DEBUG +#define USE_CUSTOM_ERROR_HANDLER +#endif + #ifdef TESTING #define DATUMVAR_DEBUGGING_MODE diff --git a/code/controllers/subsystem/research.dm b/code/controllers/subsystem/research.dm index 4aee87a38f..0836678c0a 100644 --- a/code/controllers/subsystem/research.dm +++ b/code/controllers/subsystem/research.dm @@ -45,7 +45,7 @@ SUBSYSTEM_DEF(research) var/list/errored_datums = list() var/list/point_types = list() //typecache style type = TRUE list //---------------------------------------------- - var/list/single_server_income = list(TECHWEB_POINT_TYPE_GENERIC = 25) //citadel edit - techwebs nerf + var/list/single_server_income = list(TECHWEB_POINT_TYPE_GENERIC = 35) //citadel edit - techwebs nerf var/multiserver_calculation = FALSE var/last_income //^^^^^^^^ ALL OF THESE ARE PER SECOND! ^^^^^^^^ diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 30c78d6321..348bcb23de 100755 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -250,6 +250,8 @@ SUBSYSTEM_DEF(ticker) if(!GLOB.Debug2) if(!can_continue) log_game("[mode.name] failed pre_setup, cause: [mode.setup_error]") + send2irc("SSticker", "[mode.name] failed pre_setup, cause: [mode.setup_error]") + message_admins("[mode.name] failed pre_setup, cause: [mode.setup_error]") QDEL_NULL(mode) to_chat(world, "Error setting up [GLOB.master_mode]. Reverting to pre-game lobby.") SSjob.ResetOccupations() diff --git a/code/datums/mood_events/needs_events.dm b/code/datums/mood_events/needs_events.dm index c67f4bf160..75b7e6931f 100644 --- a/code/datums/mood_events/needs_events.dm +++ b/code/datums/mood_events/needs_events.dm @@ -4,7 +4,7 @@ mood_change = -4 /datum/mood_event/wellfed - description = "My belly feels round and full.\n" + description = "I'm stuffed!\n" mood_change = 6 /datum/mood_event/fed diff --git a/code/datums/position_point_vector.dm b/code/datums/position_point_vector.dm index 7d49db8429..a33d0d2225 100644 --- a/code/datums/position_point_vector.dm +++ b/code/datums/position_point_vector.dm @@ -186,8 +186,8 @@ /datum/point/vector/proc/increment(multiplier = 1) iteration++ - x += mpx * 1 - y += mpy * 1 + x += mpx * (multiplier) + y += mpy * (multiplier) /datum/point/vector/proc/return_vector_after_increments(amount = 7, multiplier = 1, force_simulate = FALSE) var/datum/point/vector/v = copy_to() diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm index 7a341ad69a..3af43ffb78 100644 --- a/code/game/data_huds.dm +++ b/code/game/data_huds.dm @@ -222,7 +222,7 @@ var/icon/I = icon(icon, icon_state, dir) holder.pixel_y = I.Height() - world.icon_size holder.icon_state = "hudno_id" - if(wear_id) + if(wear_id?.GetID()) holder.icon_state = "hud[ckey(wear_id.GetJobName())]" sec_hud_set_security_status() diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 41e429319c..7532d18d06 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -378,6 +378,8 @@ GLOBAL_LIST_EMPTY(objectives) for(var/datum/mind/M in owners) if(considered_alive(M)) return FALSE + if(M.current?.suiciding) //killing yourself ISN'T glorious. + return FALSE return TRUE /datum/objective/nuclear diff --git a/code/game/machinery/_machinery.dm b/code/game/machinery/_machinery.dm index 69edfcd5ec..9b5aa96b0b 100644 --- a/code/game/machinery/_machinery.dm +++ b/code/game/machinery/_machinery.dm @@ -91,6 +91,7 @@ Class Procs: verb_yell = "blares" pressure_resistance = 15 max_integrity = 200 + layer = BELOW_OBJ_LAYER //keeps shit coming out of the machine from ending up underneath it. anchored = TRUE interaction_flags_atom = INTERACT_ATOM_ATTACK_HAND | INTERACT_ATOM_UI_INTERACT @@ -120,7 +121,7 @@ Class Procs: armor = list("melee" = 25, "bullet" = 10, "laser" = 10, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 70) . = ..() GLOB.machines += src - + if(ispath(circuit, /obj/item/circuitboard)) circuit = new circuit circuit.apply_default_parts(src) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 7188fbc50e..d0a1634f8c 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -102,7 +102,7 @@ /obj/machinery/door/airlock/Initialize() . = ..() - wires = new /datum/wires/airlock(src) + wires = new wiretypepath(src) //CIT CHANGE - makes it possible for airlocks to have different wire datums if(frequency) set_frequency(frequency) diff --git a/code/game/machinery/harvester.dm b/code/game/machinery/harvester.dm index 17f355b5ad..1f40672e05 100644 --- a/code/game/machinery/harvester.dm +++ b/code/game/machinery/harvester.dm @@ -131,18 +131,24 @@ playsound(src, 'sound/machines/microwave/microwave-end.ogg', 100, 0) /obj/machinery/harvester/screwdriver_act(mob/living/user, obj/item/I) - . = ..() - if(.) - return TRUE - if(!state_open && !occupant) - if(default_deconstruction_screwdriver(user, "[initial(icon_state)]-o", initial(icon_state), I)) - return + . = TRUE + if(..()) + return + if(occupant) + to_chat(user, "[src] is currently occupied!") + return + if(state_open) + to_chat(user, "[src] must be closed to [panel_open ? "close" : "open"] it's maintenance hatch!") + return + if(default_deconstruction_screwdriver(user, "[initial(icon_state)]-o", initial(icon_state), I)) + return + return FALSE /obj/machinery/harvester/crowbar_act(mob/living/user, obj/item/I) if(default_pry_open(I)) - return + return TRUE if(default_deconstruction_crowbar(I)) - return + return TRUE /obj/machinery/harvester/default_pry_open(obj/item/I) //wew . = !(state_open || panel_open || (flags_1 & NODECONSTRUCT_1)) && I.tool_behaviour == TOOL_CROWBAR //We removed is_operational() here @@ -181,4 +187,4 @@ if(state_open) to_chat(user, "[src] must be closed before harvesting.") else if(!harvesting) - to_chat(user, "Alt-click [src] to start harvesting.") + to_chat(user, "Alt-click [src] to start harvesting.") \ No newline at end of file diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index e4967b494d..30b1ca3399 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -95,7 +95,33 @@ var/atom/A = target if(!proximity && prox_check) return - A.emag_act(user) + //Citadel changes: modular code misfiring, so we're bypassing into main code. + if(!uses) + user.visible_message("[src] emits a weak spark. It's burnt out!") + playsound(src, 'sound/effects/light_flicker.ogg', 100, 1) + return + else if(uses <= 3) + playsound(src, 'sound/effects/light_flicker.ogg', 30, 1) //Tiiiiiiny warning sound to let ya know your emag's almost dead + + if(isturf(A)) + return + if(istype(A,/obj/item/storage/lockbox)) + A.emag_act(user) + uses = max(uses - 1, 0) + if(!uses) + user.visible_message("[src] fizzles and sparks. It seems like it's out of charges.") + playsound(src, 'sound/effects/light_flicker.ogg', 100, 1) + if(istype(A,/obj/item/storage)) + return + if(!(isobj(A) || issilicon(A) || isbot(A) || isdrone(A))) + return + else + A.emag_act(user) + uses = max(uses - 1, 0) + if(!uses) + user.visible_message("[src] fizzles and sparks. It seems like it's out of charges.") + playsound(src, 'sound/effects/light_flicker.ogg', 100, 1) + /obj/item/card/emagfake desc = "It's a card with a magnetic strip attached to some circuitry. Closer inspection shows that this card is a poorly made replica, with a \"DonkCo\" logo stamped on the back." diff --git a/code/game/objects/items/devices/dogborg_sleeper.dm b/code/game/objects/items/devices/dogborg_sleeper.dm index e12344fa53..68045296be 100644 --- a/code/game/objects/items/devices/dogborg_sleeper.dm +++ b/code/game/objects/items/devices/dogborg_sleeper.dm @@ -13,11 +13,13 @@ var/cleaning = FALSE var/cleaning_cycles = 10 var/patient_laststat = null - var/list/injection_chems = list("antitoxin", "epinephrine", "morphine", "salbutamol", "bicaridine", "kelotane") + var/list/injection_chems = list("antitoxin", "epinephrine", "salbutamol", "bicaridine", "kelotane") var/eject_port = "ingestion" var/escape_in_progress = FALSE var/message_cooldown var/breakout_time = 300 + var/tmp/last_hearcheck = 0 + var/tmp/list/hearing_mobs var/list/items_preserved = list() var/static/list/important_items = typecacheof(list( /obj/item/hand_tele, @@ -45,10 +47,16 @@ // Bags are prohibited from this due to the potential explotation of objects, same with brought -/obj/item/dogborg/sleeper/New() - ..() +/obj/item/dogborg/sleeper/Initialize() + . = ..() update_icon() item_flags |= NOBLUDGEON //No more attack messages + START_PROCESSING(SSobj, src) + +/obj/item/dogborg/sleeper/Destroy() + STOP_PROCESSING(SSobj, src) + go_out() //just... sanity I guess, edge case shit + return ..() /obj/item/dogborg/sleeper/Exit(atom/movable/O) return 0 @@ -59,7 +67,7 @@ return if(!iscarbon(target)) return - if(!(target.client && target.client.prefs && target.client.prefs.toggles && (target.client.prefs.toggles & MEDIHOUND_SLEEPER))) + if(!target.client || !(target.client.prefs.cit_toggles & MEDIHOUND_SLEEPER)) to_chat(user, "This person is incompatible with our equipment.") return if(target.buckled) @@ -85,8 +93,8 @@ injection_chems += "toxin" target.forceMove(src) target.reset_perspective(src) + target.ExtinguishMob() //The tongue already puts out fire stacks but being put into the sleeper shouldn't allow you to keep burning. update_gut() - START_PROCESSING(SSobj, src) user.visible_message("[hound.name]'s medical pod lights up and expands as [target.name] slips inside into their [src.name].", "Your medical pod lights up as [target] slips into your [src]. Life support functions engaged.") message_admins("[key_name(hound)] has sleeper'd [key_name(patient)] as a dogborg. [ADMIN_JMP(src)]") playsound(hound, 'sound/effects/bin_close.ogg', 100, 1) @@ -137,7 +145,8 @@ else //You clicked eject with nothing in you, let's just reset stuff to be sure. items_preserved.Cut() cleaning = FALSE - update_gut() + update_gut() + /obj/item/dogborg/sleeper/attack_self(mob/user) if(..()) @@ -265,7 +274,6 @@ patient_laststat = null patient = null hound.update_icons() - return //Gurgleborg process /obj/item/dogborg/sleeper/proc/clean_cycle() @@ -274,6 +282,10 @@ if(!(I in contents)) items_preserved -= I var/list/touchable_items = contents - items_preserved + var/sound/prey_digest = sound(get_sfx("digest_prey")) + var/sound/prey_death = sound(get_sfx("death_prey")) + var/sound/pred_digest = sound(get_sfx("digest_pred")) + var/sound/pred_death = sound(get_sfx("death_pred")) if(cleaning_cycles) cleaning_cycles-- cleaning = TRUE @@ -293,10 +305,19 @@ to_chat(hound,"You feel your belly slowly churn around [T], breaking them down into a soft slurry to be used as power for your systems.") to_chat(T,"You feel [hound]'s belly slowly churn around your form, breaking you down into a soft slurry to be used as power for [hound]'s systems.") hound.cell.give(30000) //Fueeeeellll - T.stop_sound_channel(CHANNEL_PRED) - playsound(get_turf(hound),"death_pred",50,0,-6,0,channel=CHANNEL_PRED,ignore_walls = FALSE) - T.stop_sound_channel(CHANNEL_PRED) - T.playsound_local("death_prey",60) + if((world.time - NORMIE_HEARCHECK) > last_hearcheck) + var/turf/source = get_turf(hound) + LAZYCLEARLIST(hearing_mobs) + for(var/mob/H in get_hearers_in_view(3, source)) + if(!H.client || !(H.client.prefs.cit_toggles & DIGESTION_NOISES)) + continue + LAZYADD(hearing_mobs, H) + last_hearcheck = world.time + for(var/mob/H in hearing_mobs) + if(!istype(H.loc, /obj/item/dogborg/sleeper)) + H.playsound_local(source, null, 45, falloff = 0, S = pred_death) + else if(H in contents) + H.playsound_local(source, null, 65, falloff = 0, S = prey_death) for(var/belly in T.vore_organs) var/obj/belly/B = belly for(var/atom/movable/thing in B) @@ -328,15 +349,22 @@ to_chat(hound, "Your [src] is now clean. Ending self-cleaning cycle.") cleaning = FALSE update_gut() - return //sound effects - for(var/mob/living/M in contents) - if(prob(50)) - M.stop_sound_channel(CHANNEL_PRED) - playsound(get_turf(hound),"digest_pred",35,0,-6,0,channel=CHANNEL_PRED,ignore_walls = FALSE) - M.stop_sound_channel(CHANNEL_PRED) - M.playsound_local("digest_prey",60) + if(prob(50)) + if((world.time - NORMIE_HEARCHECK) > last_hearcheck) + var/turf/source = get_turf(hound) + LAZYCLEARLIST(hearing_mobs) + for(var/mob/H in get_hearers_in_view(3, source)) + if(!H.client || !(H.client.prefs.cit_toggles & DIGESTION_NOISES)) + continue + LAZYADD(hearing_mobs, H) + last_hearcheck = world.time + for(var/mob/H in hearing_mobs) + if(!istype(H.loc, /obj/item/dogborg/sleeper)) + H.playsound_local(source, null, 45, falloff = 0, S = pred_digest) + else if(H in contents) + H.playsound_local(source, null, 65, falloff = 0, S = prey_digest) if(cleaning) addtimer(CALLBACK(src, .proc/clean_cycle), 50) @@ -407,7 +435,6 @@ brigman.forceMove(src) brigman.reset_perspective(src) update_gut() - START_PROCESSING(SSobj, src) user.visible_message("[hound.name]'s mobile brig clunks in series as [brigman] slips inside.", "Your mobile brig groans lightly as [brigman] slips inside.") playsound(hound, 'sound/effects/bin_close.ogg', 80, 1) // Really don't need ERP sound effects for robots return @@ -481,7 +508,6 @@ trashman.forceMove(src) trashman.reset_perspective(src) update_gut() - START_PROCESSING(SSobj, src) user.visible_message("[hound.name]'s garbage processor groans lightly as [trashman] slips inside.", "Your garbage compactor groans lightly as [trashman] slips inside.") playsound(hound, 'sound/effects/bin_close.ogg', 80, 1) return diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index 8a2e5d1292..1f3019fe65 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -94,6 +94,8 @@ target.update_handcuffed() if(trashtype && !dispense) qdel(src) + if(iscyborg(user)) + playsound(user, "law", 50, 0) return /obj/item/restraints/handcuffs/sinew diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 3bac97b009..7867ec5f1e 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -80,7 +80,7 @@ return FALSE //R.speed = -2 // Gotta go fast. - //Citadel change - makes vtecs give an ability rather than reducing the borg's speed instantly + //Citadel change - makes vtecs give an ability rather than reducing the borg's speed instantly R.AddAbility(new/obj/effect/proc_holder/silicon/cyborg/vtecControl) /obj/item/borg/upgrade/vtec/deactivate(mob/living/silicon/robot/R, user = usr) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index d66d64cde5..a6a6c5f699 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -167,6 +167,10 @@ L.stop_pulling() else if(istype(AM, /obj/structure/closet)) return + + else if(istype(AM, /obj/effect)) + return + else if(isobj(AM)) if (istype(AM, /obj/item)) var/obj/item/I = AM diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index df3df8ad14..067b1b0eb1 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -96,6 +96,7 @@ /obj/structure/closet/crate/freezer/blood name = "blood freezer" desc = "A freezer containing packs of blood." + icon_state = "surgery" /obj/structure/closet/crate/freezer/blood/PopulateContents() . = ..() diff --git a/code/modules/atmospherics/environmental/LINDA_fire.dm b/code/modules/atmospherics/environmental/LINDA_fire.dm index 9ca822b5ce..f816866070 100644 --- a/code/modules/atmospherics/environmental/LINDA_fire.dm +++ b/code/modules/atmospherics/environmental/LINDA_fire.dm @@ -37,7 +37,7 @@ active_hotspot = new /obj/effect/hotspot(src) active_hotspot.temperature = exposed_temperature - active_hotspot.volume = exposed_volume + active_hotspot.volume = exposed_volume*25 active_hotspot.just_spawned = (current_cycle < SSair.times_fired) //remove just_spawned protection if no longer processing this cell diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index ddcd8e2d6d..bcb3752cbf 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -650,7 +650,7 @@ if(0) add_overlay(AALARM_OVERLAY_GREEN) overlay_state = AALARM_OVERLAY_GREEN - light_color = LIGHT_COLOR_GREEN + light_color = LIGHT_COLOR_BLUEGREEN set_light(brightness_on) if(1) add_overlay(AALARM_OVERLAY_WARN) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 8ea827ce5c..2ee079e41d 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -1475,7 +1475,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) features["mam_tail"] = "None" if("tail_human") - var/list/snowflake_tails_list = list("None" = null) + var/list/snowflake_tails_list = list() for(var/path in GLOB.tails_list_human) var/datum/sprite_accessory/tails/human/instance = GLOB.tails_list_human[path] if(istype(instance, /datum/sprite_accessory)) @@ -1492,7 +1492,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) features["mam_tail"] = "None" if("mam_tail") - var/list/snowflake_tails_list = list("None" = null) + var/list/snowflake_tails_list = list() for(var/path in GLOB.mam_tails_list) var/datum/sprite_accessory/mam_tails/instance = GLOB.mam_tails_list[path] if(istype(instance, /datum/sprite_accessory)) @@ -1568,7 +1568,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) skin_tone = new_s_tone if("taur") - var/list/snowflake_taur_list = list("Normal" = null) + var/list/snowflake_taur_list = list() for(var/path in GLOB.taur_list) var/datum/sprite_accessory/taur/instance = GLOB.taur_list[path] if(istype(instance, /datum/sprite_accessory)) @@ -1586,7 +1586,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) features["tail_lizard"] = "None" if("ears") - var/list/snowflake_ears_list = list("Normal" = null) + var/list/snowflake_ears_list = list() for(var/path in GLOB.ears_list) var/datum/sprite_accessory/ears/instance = GLOB.ears_list[path] if(istype(instance, /datum/sprite_accessory)) @@ -1599,7 +1599,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) features["ears"] = new_ears if("mam_ears") - var/list/snowflake_ears_list = list("Normal" = null) + var/list/snowflake_ears_list = list() for(var/path in GLOB.mam_ears_list) var/datum/sprite_accessory/mam_ears/instance = GLOB.mam_ears_list[path] if(istype(instance, /datum/sprite_accessory)) @@ -1612,7 +1612,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) features["mam_ears"] = new_ears if("mam_body_markings") - var/list/snowflake_markings_list = list("Normal" = null) + var/list/snowflake_markings_list = list() for(var/path in GLOB.mam_body_markings_list) var/datum/sprite_accessory/mam_body_markings/instance = GLOB.mam_body_markings_list[path] if(istype(instance, /datum/sprite_accessory)) @@ -2062,9 +2062,19 @@ GLOBAL_LIST_EMPTY(preferences_datums) else if("xenotail" in pref_species.default_features) character.dna.species.mutant_bodyparts |= "xenotail" - if(("legs" in pref_species.default_features) && character.dna.features["legs"] == "Digitigrade Legs") - pref_species.species_traits += DIGITIGRADE + if("legs" in pref_species.default_features) + if(character.dna.features["legs"] == "Digitigrade Legs") + pref_species.species_traits += DIGITIGRADE + character.Digitigrade_Leg_Swap(FALSE) + + if(character.dna.features["legs"] == "Normal Legs" && DIGITIGRADE in pref_species.species_traits) + pref_species.species_traits -= DIGITIGRADE + character.Digitigrade_Leg_Swap(TRUE) + + else if((!"legs" in pref_species.default_features) && DIGITIGRADE in pref_species.species_traits) + pref_species.species_traits -= DIGITIGRADE character.Digitigrade_Leg_Swap(TRUE) + if(DIGITIGRADE in pref_species.species_traits) character.Digitigrade_Leg_Swap(FALSE) diff --git a/code/modules/client/verbs/aooc.dm b/code/modules/client/verbs/aooc.dm index dd6a802e11..90c0dc5a55 100644 --- a/code/modules/client/verbs/aooc.dm +++ b/code/modules/client/verbs/aooc.dm @@ -56,7 +56,7 @@ var/antaglisting = list() for(var/datum/mind/M in get_antag_minds(/datum/antagonist)) - if(!M.current || !M.current.client) + if(!M.current || !M.current.client || isnewplayer(M.current)) continue antaglisting |= M.current.client @@ -104,7 +104,7 @@ GLOBAL_VAR_INIT(antag_ooc_colour, AOOC_COLOR) var/antaglisting = list() //Only those who have access to AOOC need to know if it's enabled or not. for(var/datum/mind/M in get_antag_minds(/datum/antagonist)) - if(!M.current || !M.current.client) + if(!M.current || !M.current.client || isnewplayer(M.current)) continue antaglisting |= M.current.client diff --git a/code/modules/clothing/shoes/_shoes.dm b/code/modules/clothing/shoes/_shoes.dm index 61f189e236..00cb2678cd 100644 --- a/code/modules/clothing/shoes/_shoes.dm +++ b/code/modules/clothing/shoes/_shoes.dm @@ -54,7 +54,10 @@ if(damaged_clothes) . += mutable_appearance('icons/effects/item_damage.dmi', "damagedshoe") if(bloody) - . += mutable_appearance('icons/effects/blood.dmi', "shoeblood") + if(adjusted == NORMAL_STYLE) + . += mutable_appearance('icons/effects/blood.dmi', "shoeblood") + else + . += mutable_appearance('modular_citadel/icons/mob/digishoes.dmi', "shoeblood") /obj/item/clothing/shoes/equipped(mob/user, slot) . = ..() diff --git a/code/modules/clothing/spacesuits/_spacesuits.dm b/code/modules/clothing/spacesuits/_spacesuits.dm index 6224e2a3d9..913b92f9eb 100644 --- a/code/modules/clothing/spacesuits/_spacesuits.dm +++ b/code/modules/clothing/spacesuits/_spacesuits.dm @@ -35,7 +35,7 @@ allowed = list(/obj/item/flashlight, /obj/item/tank/internals) slowdown = 1 armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 50, "fire" = 80, "acid" = 70) - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAUR cold_protection = CHEST | GROIN | LEGS | FEET | ARMS | HANDS min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS @@ -43,3 +43,4 @@ strip_delay = 80 equip_delay_other = 80 resistance_flags = NONE + tauric = TRUE //Citadel Add for tauric hardsuits diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 0794ef29e7..974936ba30 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -180,6 +180,7 @@ armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 10, "bio" = 100, "rad" = 75, "fire" = 100, "acid" = 75) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/engine resistance_flags = FIRE_PROOF + tauric = TRUE //Citadel Add for tauric hardsuits //Atmospherics /obj/item/clothing/head/helmet/space/hardsuit/engine/atmos @@ -201,6 +202,7 @@ heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS //Uncomment to enable firesuit protection max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT helmettype = /obj/item/clothing/head/helmet/space/hardsuit/engine/atmos + tauric = TRUE //Citadel Add for tauric hardsuits //Chief Engineer's hardsuit @@ -224,6 +226,7 @@ max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT helmettype = /obj/item/clothing/head/helmet/space/hardsuit/engine/elite jetpack = /obj/item/tank/jetpack/suit + tauric = TRUE //Citadel Add for tauric hardsuits //Mining hardsuit /obj/item/clothing/head/helmet/space/hardsuit/mining @@ -254,6 +257,7 @@ allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/storage/bag/ore, /obj/item/pickaxe) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/mining heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/suit/space/hardsuit/mining/Initialize() . = ..() @@ -349,6 +353,7 @@ allowed = list(/obj/item/gun, /obj/item/ammo_box,/obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/transforming/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/syndi jetpack = /obj/item/tank/jetpack/suit + tauric = TRUE //Citadel Add for tauric hardsuits //Elite Syndie suit /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite @@ -377,6 +382,7 @@ heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = FIRE_PROOF | ACID_PROOF + tauric = TRUE //Citadel Add for tauric hardsuits //The Owl Hardsuit /obj/item/clothing/head/helmet/space/hardsuit/syndi/owl @@ -449,6 +455,7 @@ allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/storage/firstaid, /obj/item/healthanalyzer, /obj/item/stack/medical) armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 10, "bio" = 100, "rad" = 60, "fire" = 60, "acid" = 75) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/medical + tauric = TRUE //Citadel Add for tauric hardsuits //Research Director hardsuit /obj/item/clothing/head/helmet/space/hardsuit/rd @@ -490,6 +497,7 @@ /obj/item/hand_tele, /obj/item/aicard) armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 100, "bio" = 100, "rad" = 60, "fire" = 60, "acid" = 80) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/rd + tauric = TRUE //Citadel Add for tauric hardsuits @@ -510,6 +518,7 @@ item_state = "sec_hardsuit" armor = list("melee" = 35, "bullet" = 15, "laser" = 30, "energy" = 10, "bomb" = 10, "bio" = 100, "rad" = 50, "fire" = 75, "acid" = 75) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/suit/space/hardsuit/security/Initialize() . = ..() @@ -531,6 +540,7 @@ armor = list("melee" = 45, "bullet" = 25, "laser" = 30, "energy" = 10, "bomb" = 25, "bio" = 100, "rad" = 50, "fire" = 95, "acid" = 95) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security/hos jetpack = /obj/item/tank/jetpack/suit + tauric = TRUE //Citadel Add for tauric hardsuits //Captain /obj/item/clothing/head/helmet/space/hardsuit/captain @@ -558,6 +568,7 @@ heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT //this needed to be added a long fucking time ago helmettype = /obj/item/clothing/head/helmet/space/hardsuit/captain + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/suit/space/hardsuit/captain/Initialize() . = ..() @@ -657,6 +668,7 @@ var/recharge_rate = 1 //How quickly the shield recharges once it starts charging var/shield_state = "shield-old" var/shield_on = "shield-old" + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/suit/space/hardsuit/shielded/Initialize() . = ..() @@ -774,6 +786,7 @@ allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/transforming/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/shielded/syndi slowdown = 0 + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/suit/space/hardsuit/shielded/syndi/Initialize() @@ -803,6 +816,7 @@ max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT helmettype = /obj/item/clothing/head/helmet/space/hardsuit/shielded/swat dog_fashion = /datum/dog_fashion/back/deathsquad + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/head/helmet/space/hardsuit/shielded/swat name = "death commando helmet" diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index dcd344563a..14ac449179 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -191,6 +191,7 @@ Contains: icon_state = "ert_security" item_state = "ert_security" helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/sec + tauric = TRUE //Citadel Add for tauric hardsuits //ERT Engineering /obj/item/clothing/head/helmet/space/hardsuit/ert/engi @@ -204,6 +205,7 @@ Contains: icon_state = "ert_engineer" item_state = "ert_engineer" helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/engi + tauric = TRUE //Citadel Add for tauric hardsuits //ERT Medical /obj/item/clothing/head/helmet/space/hardsuit/ert/med @@ -218,6 +220,7 @@ Contains: item_state = "ert_medical" helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/med species_exception = list(/datum/species/angel) + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/suit/space/eva name = "EVA suit" @@ -225,6 +228,7 @@ Contains: item_state = "s_suit" desc = "A lightweight space suit with the basic ability to protect the wearer from the vacuum of space during emergencies." armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 20, "fire" = 50, "acid" = 65) + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/head/helmet/space/eva name = "EVA helmet" @@ -343,6 +347,7 @@ Contains: slowdown = 2 armor = list("melee" = 5, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 10, "fire" = 0, "acid" = 0) strip_delay = 65 + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/suit/space/fragile/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) if(!torn && prob(50)) diff --git a/code/modules/clothing/spacesuits/syndi.dm b/code/modules/clothing/spacesuits/syndi.dm index 6d42b2d78f..e6710ee8f9 100644 --- a/code/modules/clothing/spacesuits/syndi.dm +++ b/code/modules/clothing/spacesuits/syndi.dm @@ -109,6 +109,7 @@ name = "green space suit" icon_state = "syndicate-black-med" item_state = "syndicate-black" + tauric = TRUE //Citadel Add for tauric hardsuits //Black-orange syndicate space suit diff --git a/code/modules/clothing/suits/_suits.dm b/code/modules/clothing/suits/_suits.dm index 6aabee0c81..0b6514b275 100644 --- a/code/modules/clothing/suits/_suits.dm +++ b/code/modules/clothing/suits/_suits.dm @@ -9,6 +9,48 @@ var/togglename = null var/suittoggled = FALSE + var/adjusted = NORMAL_STYLE + mutantrace_variation = MUTANTRACE_VARIATION + var/tauric = FALSE //Citadel Add for tauric hardsuits + var/taurmode = NOT_TAURIC + var/dimension_x = 32 + var/dimension_y = 32 + var/center = FALSE //Should we center the sprite? + +/obj/item/clothing/suit/equipped(mob/user, slot) + ..() + if(ishuman(user)) + var/mob/living/carbon/human/H = user + + if(mutantrace_variation) + if(DIGITIGRADE in H.dna.species.species_traits) + adjusted = ALT_STYLE + H.update_inv_wear_suit() + else if(adjusted == ALT_STYLE) + adjusted = NORMAL_STYLE + H.update_inv_wear_suit() + + if(("taur" in H.dna.species.mutant_bodyparts) && (H.dna.features["taur"] != "None")) + if(H.dna.features["taur"] in list("Naga", "Tentacle")) + taurmode = SNEK_TAURIC + if(tauric == TRUE) + center = TRUE + dimension_x = 64 + else if(H.dna.features["taur"] in list("Fox", "Wolf", "Otie", "Drake", "Lab", "Shepherd", "Husky", "Eevee", "Panther", "Tajaran", "Horse", "Cow")) + taurmode = PAW_TAURIC + if(tauric == TRUE) + center = TRUE + dimension_x = 64 + /* + else if(H.dna.features["taur"] == "Horse" || "Cow") + taurmode = HOOF_TAURIC //tweak this for when the exotics get their own suits, if ever. + center = TRUE + dimension_x = 64 + */ + else + taurmode = NOT_TAURIC + H.update_inv_wear_suit() + /obj/item/clothing/suit/worn_overlays(isinhands = FALSE) . = list() diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index f73ca30fb0..97c9da289b 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -23,6 +23,7 @@ item_state = "armoralt" blood_overlay_type = "armor" dog_fashion = /datum/dog_fashion/back + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/suit/armor/vest/alt desc = "A Type I armored vest that provides decent protection against most types of damage." diff --git a/code/modules/clothing/suits/bio.dm b/code/modules/clothing/suits/bio.dm index 1c24ee17a7..cbc8f33e3a 100644 --- a/code/modules/clothing/suits/bio.dm +++ b/code/modules/clothing/suits/bio.dm @@ -23,10 +23,11 @@ slowdown = 1 allowed = list(/obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman, /obj/item/pen, /obj/item/flashlight/pen, /obj/item/reagent_containers/dropper, /obj/item/reagent_containers/syringe, /obj/item/reagent_containers/hypospray) armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 80, "fire" = 30, "acid" = 100) - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAUR strip_delay = 70 equip_delay_other = 70 resistance_flags = ACID_PROOF + tauric = TRUE //Citadel Add for tauric hardsuits //Standard biosuit, orange stripe /obj/item/clothing/head/bio_hood/general diff --git a/code/modules/clothing/suits/utility.dm b/code/modules/clothing/suits/utility.dm index 1748813f56..10ddf37265 100644 --- a/code/modules/clothing/suits/utility.dm +++ b/code/modules/clothing/suits/utility.dm @@ -20,7 +20,8 @@ body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/flashlight, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman, /obj/item/extinguisher, /obj/item/crowbar) slowdown = 1 - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT + armor = list("melee" = 15, "bullet" = 5, "laser" = 20, "energy" = 10, "bomb" = 20, "bio" = 10, "rad" = 20, "fire" = 100, "acid" = 50) + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAUR clothing_flags = STOPSPRESSUREDAMAGE | THICKMATERIAL heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT @@ -29,6 +30,7 @@ strip_delay = 60 equip_delay_other = 60 resistance_flags = FIRE_PROOF + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/suit/fire/firefighter icon_state = "firesuit" @@ -83,7 +85,7 @@ body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS slowdown = 2 armor = list("melee" = 20, "bullet" = 0, "laser" = 20,"energy" = 10, "bomb" = 100, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 50) - flags_inv = HIDEJUMPSUIT + flags_inv = HIDEJUMPSUIT|HIDETAUR heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS @@ -91,6 +93,7 @@ strip_delay = 70 equip_delay_other = 70 resistance_flags = NONE + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/head/bomb_hood/security @@ -143,6 +146,7 @@ armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 60, "rad" = 100, "fire" = 30, "acid" = 30) strip_delay = 60 equip_delay_other = 60 - flags_inv = HIDEJUMPSUIT + flags_inv = HIDEJUMPSUIT|HIDETAUR resistance_flags = NONE rad_flags = RAD_PROTECT_CONTENTS + tauric = TRUE //Citadel Add for tauric hardsuits diff --git a/code/modules/clothing/suits/vg_suits.dm b/code/modules/clothing/suits/vg_suits.dm index 2c97653637..08fe029f9e 100644 --- a/code/modules/clothing/suits/vg_suits.dm +++ b/code/modules/clothing/suits/vg_suits.dm @@ -9,6 +9,7 @@ siemens_coefficient = 0.5 icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/armor/xcomsquaddie/dredd name = "Judge Armor" @@ -17,6 +18,7 @@ item_state = "dredd-suit" icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/armor/xcomarmor @@ -30,6 +32,7 @@ siemens_coefficient = 0.5 icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/armor/vest/neorussian name = "neo-Russian vest" @@ -38,6 +41,7 @@ item_state = "nr_vest" icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/armor/doomguy name = "Doomguy's armor" @@ -49,6 +53,7 @@ armor = list(melee = 50, bullet = 30, laser = 20, energy = 20, bomb = 30, bio = 0, rad = 0) icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/kaminacape @@ -58,6 +63,7 @@ body_parts_covered = 0 icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/officercoat name = "Officer's Coat" @@ -65,6 +71,7 @@ icon_state = "officersuit" body_parts_covered = CHEST|GROIN|LEGS|ARMS|HANDS icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/soldiercoat name = "Soldier's Coat" @@ -72,6 +79,7 @@ icon_state = "soldiersuit" body_parts_covered = CHEST|GROIN|LEGS|ARMS|HANDS icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/russofurcoat name = "russian fur coat" @@ -81,6 +89,7 @@ body_parts_covered = CHEST|GROIN|LEGS|ARMS|HANDS icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/doshjacket name = "Plasterer's Jacket" @@ -89,6 +98,7 @@ body_parts_covered = CHEST|GROIN|ARMS icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/maidapron name = "Apron" @@ -97,6 +107,7 @@ body_parts_covered = CHEST|GROIN icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/clownpiece name = "small fairy wings" @@ -105,6 +116,7 @@ body_parts_covered = 0 icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/clownpiece/flying name = "small fairy wings" @@ -112,6 +124,7 @@ icon_state = "clownpiece-fly" icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/raincoat name = "Raincoat" @@ -120,5 +133,6 @@ body_parts_covered =CHEST|GROIN|LEGS|ARMS|HANDS icon = 'modular_citadel/icons/obj/clothing/vg_clothes.dmi' alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' + mutantrace_variation = NO_MUTANTRACE_VARIATION diff --git a/code/modules/clothing/under/_under.dm b/code/modules/clothing/under/_under.dm index 8883919e38..c2c3f19b9d 100644 --- a/code/modules/clothing/under/_under.dm +++ b/code/modules/clothing/under/_under.dm @@ -65,6 +65,8 @@ var/mob/living/carbon/human/H = user if(DIGITIGRADE in H.dna.species.species_traits) suit_style = DIGITIGRADE_SUIT_STYLE + else + suit_style = NORMAL_SUIT_STYLE H.update_inv_w_uniform() if(attached_accessory && slot != SLOT_HANDS && ishuman(user)) diff --git a/code/modules/events/pirates.dm b/code/modules/events/pirates.dm index 80b8373887..910e94f680 100644 --- a/code/modules/events/pirates.dm +++ b/code/modules/events/pirates.dm @@ -148,6 +148,7 @@ new /obj/item/stack/spacecash/c200(drop_location()) credits_stored -= 200 to_chat(user,"You retrieve the siphoned credits!") + credits_stored = 0 /obj/machinery/shuttle_scrambler/proc/send_notification() diff --git a/code/modules/food_and_drinks/food/snacks_other.dm b/code/modules/food_and_drinks/food/snacks_other.dm index ecb3cfb2ba..a2f5b06042 100644 --- a/code/modules/food_and_drinks/food/snacks_other.dm +++ b/code/modules/food_and_drinks/food/snacks_other.dm @@ -156,7 +156,7 @@ icon_state = "mint" bitesize = 1 trash = /obj/item/trash/plate - list_reagents = list("minttoxin" = 1) + list_reagents = list("minttoxin" = 2) filling_color = "#800000" foodtype = TOXIC | SUGAR diff --git a/code/modules/food_and_drinks/food/snacks_pastry.dm b/code/modules/food_and_drinks/food/snacks_pastry.dm index 1956365896..8574933bda 100644 --- a/code/modules/food_and_drinks/food/snacks_pastry.dm +++ b/code/modules/food_and_drinks/food/snacks_pastry.dm @@ -28,7 +28,7 @@ if(last_check_time + 50 < world.time) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.mind && H.mind.assigned_role == "Security Officer" && !H.has_trait(TRAIT_AGEUSIA)) + if(H.mind && H.mind.assigned_role == "Security Officer" || H.mind.assigned_role == "Detective" || H.mind.assigned_role == "Warden" || H.mind.assigned_role == "Head of Security" && !H.has_trait(TRAIT_AGEUSIA)) to_chat(H,"I love this taste!") H.adjust_disgust(-5 + -2.5 * fraction) GET_COMPONENT_FROM(mood, /datum/component/mood, H) diff --git a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm index 3bcc8d7659..1445f79aa2 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm @@ -10,6 +10,8 @@ active_power_usage = 100 circuit = /obj/item/circuitboard/machine/microwave pass_flags = PASSTABLE + light_color = LIGHT_COLOR_YELLOW + light_power = 3 var/operating = FALSE // Is it on? var/dirty = 0 // = {0..100} Does it need cleaning? var/broken = 0 // ={0,1,2} How broken is it??? @@ -267,12 +269,14 @@ soundloop.start() operating = TRUE icon_state = "mw1" + set_light(1.5) updateUsrDialog() /obj/machinery/microwave/proc/abort() operating = FALSE // Turn it off again aferwards icon_state = "mw" updateUsrDialog() + set_light(0) soundloop.stop() /obj/machinery/microwave/proc/stop() @@ -298,6 +302,7 @@ if(prob(50)) new /obj/item/reagent_containers/food/snacks/badrecipe(src) qdel(S) + set_light(0) soundloop.stop() /obj/machinery/microwave/proc/broke() @@ -310,6 +315,7 @@ flags_1 = null //So you can't add condiments operating = FALSE // Turn it off again aferwards updateUsrDialog() + set_light(0) soundloop.stop() /obj/machinery/microwave/Topic(href, href_list) diff --git a/code/modules/mining/equipment/explorer_gear.dm b/code/modules/mining/equipment/explorer_gear.dm index 2c7eaf09ba..46ae6cfbaf 100644 --- a/code/modules/mining/equipment/explorer_gear.dm +++ b/code/modules/mining/equipment/explorer_gear.dm @@ -13,6 +13,7 @@ armor = list("melee" = 30, "bullet" = 20, "laser" = 20, "energy" = 20, "bomb" = 50, "bio" = 100, "rad" = 50, "fire" = 50, "acid" = 50) allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator, /obj/item/pickaxe) resistance_flags = FIRE_PROOF + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/head/hooded/explorer name = "explorer hood" @@ -63,6 +64,7 @@ clothing_flags = THICKMATERIAL //not spaceproof max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = FIRE_PROOF | LAVA_PROOF + tauric = TRUE //Citadel Add for tauric hardsuits slowdown = 0 armor = list("melee" = 70, "bullet" = 40, "laser" = 10, "energy" = 10, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100) allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator, /obj/item/pickaxe) @@ -121,7 +123,7 @@ /****************SEVA Suit and Mask****************/ /obj/item/clothing/suit/hooded/seva - name = "SEVA suit" + name = "SEVA Suit" desc = "A fire-proof suit for exploring hot environments." icon_state = "seva" item_state = "seva" @@ -133,9 +135,10 @@ armor = list("melee" = 15, "bullet" = 10, "laser" = 10, "energy" = 10, "bomb" = 25, "bio" = 50, "rad" = 25, "fire" = 100, "acid" = 25) allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator, /obj/item/pickaxe) resistance_flags = FIRE_PROOF | GOLIATH_WEAKNESS + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/head/hooded/seva - name = "SEVA hood" + name = "SEVA Hood" desc = "A fire-proof hood for exploring hot environments." icon_state = "seva" item_state = "seva" @@ -145,6 +148,19 @@ armor = list("melee" = 10, "bullet" = 10, "laser" = 10, "energy" = 10, "bomb" = 25, "bio" = 50, "rad" = 25, "fire" = 100, "acid" = 25) resistance_flags = FIRE_PROOF | GOLIATH_WEAKNESS +/obj/item/clothing/mask/gas/seva + name = "SEVA Mask" + desc = "A face-covering plate that can be connected to an air supply. Intended for use with the SEVA Suit." + icon_state = "seva" + clothing_flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS + flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEFACIALHAIR + w_class = WEIGHT_CLASS_NORMAL + item_state = "seva" + gas_transfer_coefficient = 0.01 + permeability_coefficient = 0.01 + flags_cover = MASKCOVERSEYES | MASKCOVERSMOUTH + resistance_flags = FIRE_PROOF + /****************Exo-Suit and Mask****************/ /obj/item/clothing/suit/hooded/exo @@ -162,6 +178,7 @@ armor = list("melee" = 65, "bullet" = 5, "laser" = 5, "energy" = 5, "bomb" = 60, "bio" = 25, "rad" = 10, "fire" = 0, "acid" = 0) allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator, /obj/item/pickaxe) resistance_flags = FIRE_PROOF | GOLIATH_RESISTANCE + tauric = TRUE //Citadel Add for tauric hardsuits /obj/item/clothing/head/hooded/exo name = "Exo-hood" @@ -173,4 +190,17 @@ min_cold_protection_temperature = FIRE_HELM_MIN_TEMP_PROTECT max_heat_protection_temperature = FIRE_HELM_MAX_TEMP_PROTECT armor = list("melee" = 65, "bullet" = 5, "laser" = 5, "energy" = 5, "bomb" = 60, "bio" = 25, "rad" = 10, "fire" = 0, "acid" = 0) - resistance_flags = FIRE_PROOF | GOLIATH_RESISTANCE \ No newline at end of file + resistance_flags = FIRE_PROOF | GOLIATH_RESISTANCE + +/obj/item/clothing/mask/gas/exo + name = "Exosuit Mask" + desc = "A face-covering mask that can be connected to an air supply. Intended for use with the Exosuit." + icon_state = "exo" + clothing_flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS + flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEFACIALHAIR + w_class = WEIGHT_CLASS_NORMAL + item_state = "exo" + gas_transfer_coefficient = 0.01 + permeability_coefficient = 0.01 + flags_cover = MASKCOVERSEYES | MASKCOVERSMOUTH + resistance_flags = FIRE_PROOF \ No newline at end of file diff --git a/code/modules/mining/equipment/kinetic_crusher.dm b/code/modules/mining/equipment/kinetic_crusher.dm index 69b1bcaab4..2e695e6772 100644 --- a/code/modules/mining/equipment/kinetic_crusher.dm +++ b/code/modules/mining/equipment/kinetic_crusher.dm @@ -73,6 +73,9 @@ /obj/item/twohanded/required/kinetic_crusher/afterattack(atom/target, mob/living/user, proximity_flag, clickparams) . = ..() + if(istype(target, /obj/item/crusher_trophy)) + var/obj/item/crusher_trophy/T = target + T.add_to(src, user) if(!proximity_flag && charged)//Mark a target, or mine a tile. var/turf/proj_turf = user.loc if(!isturf(proj_turf)) diff --git a/code/modules/mining/laborcamp/laborstacker.dm b/code/modules/mining/laborcamp/laborstacker.dm index 621a6afe23..dd7f642243 100644 --- a/code/modules/mining/laborcamp/laborstacker.dm +++ b/code/modules/mining/laborcamp/laborstacker.dm @@ -99,6 +99,8 @@ GLOBAL_LIST(labor_sheet_values) if("move_shuttle") if(!alone_in_area(get_area(src), usr)) to_chat(usr, "Prisoners are only allowed to be released while alone.") + else if(!check_auth()) + to_chat(usr, "Prisoners are only allowed to be released when they reach their point goal.") else switch(SSshuttle.moveShuttle("laborcamp", "laborcamp_home", TRUE)) if(1) diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index 63f7a7e414..4852d99acb 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -308,8 +308,10 @@ switch(selection) if("Exo-suit") new /obj/item/clothing/suit/hooded/exo(drop_location) + new /obj/item/clothing/mask/gas/exo(drop_location) if("SEVA suit") new /obj/item/clothing/suit/hooded/seva(drop_location) + new /obj/item/clothing/mask/gas/seva(drop_location) SSblackbox.record_feedback("tally", "suit_voucher_redeemed", 1, selection) qdel(voucher) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index 763487f7ed..99615e9543 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -53,3 +53,4 @@ var/creamed = FALSE //to use with creampie overlays var/static/list/can_ride_typecache = typecacheof(list(/mob/living/carbon/human, /mob/living/simple_animal/slime, /mob/living/simple_animal/parrot)) var/lastpuke = 0 + var/last_fire_update diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 789a52250c..a50fb4fe79 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -122,6 +122,12 @@ ///FIRE CODE /mob/living/carbon/human/handle_fire() + if(!last_fire_update) + last_fire_update = fire_stacks + if((fire_stacks > HUMAN_FIRE_STACK_ICON_NUM && last_fire_update <= HUMAN_FIRE_STACK_ICON_NUM) || (fire_stacks <= HUMAN_FIRE_STACK_ICON_NUM && last_fire_update > HUMAN_FIRE_STACK_ICON_NUM)) + last_fire_update = fire_stacks + update_fire() + ..() if(dna) dna.species.handle_fire(src) @@ -154,6 +160,7 @@ /mob/living/carbon/human/ExtinguishMob() if(!dna || !dna.species.ExtinguishMob(src)) + last_fire_update = null ..() //END FIRE CODE diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 79ea11682d..bf76b119e9 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -528,22 +528,22 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_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 & HIDETAUR) || (!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 & HIDETAUR) || (!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 & HIDETAUR) || (!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 & HIDETAUR) || (!H.dna.features["taur"] == "None")) bodyparts_to_add -= "waggingtail_human" else if ("tail_human" in mutant_bodyparts) bodyparts_to_add -= "waggingtail_human" @@ -599,11 +599,11 @@ GLOBAL_LIST_EMPTY(roundstart_races) //Other Races if("mam_tail" 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 & HIDETAUR) || (!H.dna.features["taur"] == "None")) bodyparts_to_add -= "mam_tail" if("mam_waggingtail" 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 & HIDETAUR) || (!H.dna.features["taur"] == "None")) bodyparts_to_add -= "mam_waggingtail" else if ("mam_tail" in mutant_bodyparts) bodyparts_to_add -= "mam_waggingtail" @@ -613,8 +613,9 @@ GLOBAL_LIST_EMPTY(roundstart_races) bodyparts_to_add -= "mam_ears" if("taur" in mutant_bodyparts) - if(!H.dna.features["taur"] || H.dna.features["taur"] == "None") + if(!H.dna.features["taur"] || H.dna.features["taur"] == "None" || (H.wear_suit && (H.wear_suit.flags_inv & HIDETAUR))) bodyparts_to_add -= "taur" + //END EDIT //Digitigrade legs are stuck in the phantom zone between true limbs and mutant bodyparts. Mainly it just needs more agressive updating than most limbs. @@ -629,7 +630,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) species_traits += DIGITIGRADE var/should_be_squished = FALSE if(H.wear_suit) - if((H.wear_suit.flags_inv & HIDEJUMPSUIT) || ((H.wear_suit.body_parts_covered & LEGS) && (H.wear_suit.body_parts_covered & FEET))) + if(H.wear_suit.mutantrace_variation == NO_MUTANTRACE_VARIATION) //we got digitigrade suits now fam should_be_squished = TRUE if(H.w_uniform && !H.wear_suit) if(H.w_uniform.mutantrace_variation == NO_MUTANTRACE_VARIATION) @@ -1431,9 +1432,11 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(!target.combatmode) // CITADEL CHANGE randn += -10 //CITADEL CHANGE - being out of combat mode makes it easier for you to get disarmed if(user.resting) //CITADEL CHANGE - randn += 60 //CITADEL CHANGE - No kosher disarming if you're resting + randn += 100 //CITADEL CHANGE - No kosher disarming if you're resting if(!user.combatmode) //CITADEL CHANGE randn += 25 //CITADEL CHANGE - Makes it harder to disarm outside of combat mode + if(user.pulling == target) + randn += -20 //If you have the time to get someone in a grab, you should have a greater chance at snatching the thing in their hand. Will be made completely obsolete by the grab rework but i've got a poor track record for releasing big projects on time so w/e i guess if(randn <= 35)//CIT CHANGE - changes this back to a 35% chance to accomodate for the above being commented out in favor of right-click pushing var/obj/item/I = null diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index cf29b3541f..0a42b6eb7f 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -130,6 +130,8 @@ There are several things that need to be remembered: t_color = "[t_color]_d_l" else if(U.adjusted == NORMAL_STYLE) t_color = "[t_color]_l" + else + U.alternate_worn_icon = null var/mutable_appearance/uniform_overlay @@ -284,6 +286,8 @@ There are several things that need to be remembered: if(S.mutantrace_variation) if(S.adjusted == ALT_STYLE) S.alternate_worn_icon = 'modular_citadel/icons/mob/digishoes.dmi' + else + S.alternate_worn_icon = null overlays_standing[SHOES_LAYER] = shoes.build_worn_icon(state = shoes.icon_state, default_layer = SHOES_LAYER, default_icon_file = ((shoes.alternate_worn_icon) ? shoes.alternate_worn_icon : 'icons/mob/feet.dmi')) var/mutable_appearance/shoes_overlay = overlays_standing[SHOES_LAYER] @@ -363,18 +367,35 @@ There are several things that need to be remembered: var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_WEAR_SUIT] inv.update_icon() - if(istype(wear_suit, /obj/item/clothing/suit)) + if(wear_suit) + var/obj/item/clothing/suit/S = wear_suit wear_suit.screen_loc = ui_oclothing if(client && hud_used && hud_used.hud_shown) if(hud_used.inventory_shown) client.screen += wear_suit update_observer_view(wear_suit,1) - overlays_standing[SUIT_LAYER] = wear_suit.build_worn_icon(state = wear_suit.icon_state, default_layer = SUIT_LAYER, default_icon_file = ((wear_suit.alternate_worn_icon) ? wear_suit.alternate_worn_icon : 'icons/mob/suit.dmi')) + if(S.mutantrace_variation) + if(S.adjusted == ALT_STYLE) + S.alternate_worn_icon = 'modular_citadel/icons/mob/suit_digi.dmi' + else + S.alternate_worn_icon = null + + if(S.tauric == TRUE) + if(S.taurmode == SNEK_TAURIC) + S.alternate_worn_icon = 'modular_citadel/icons/mob/taur_naga.dmi' + if(S.taurmode == PAW_TAURIC) + S.alternate_worn_icon = 'modular_citadel/icons/mob/taur_canine.dmi' + // if(S.taurmode == HOOF_TAURIC) //commenting out for eventual pede/spider/exotics + // S.alternate_worn_icon = 'modular_citadel/icons/mob/taur_hooved.dmi' + + overlays_standing[SUIT_LAYER] = S.build_worn_icon(state = wear_suit.icon_state, default_layer = SUIT_LAYER, default_icon_file = ((wear_suit.alternate_worn_icon) ? S.alternate_worn_icon : 'icons/mob/suit.dmi')) var/mutable_appearance/suit_overlay = overlays_standing[SUIT_LAYER] if(OFFSET_SUIT in dna.species.offset_features) suit_overlay.pixel_x += dna.species.offset_features[OFFSET_SUIT][1] suit_overlay.pixel_y += dna.species.offset_features[OFFSET_SUIT][2] + if(S.center) + suit_overlay = center_image(suit_overlay, S.dimension_x, S.dimension_y) overlays_standing[SUIT_LAYER] = suit_overlay update_hair() update_mutant_bodyparts() diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 6c5f030313..fc3c0cb00e 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1020,7 +1020,7 @@ client.move_delay = world.time + movement_delay() lying_prev = lying if(canmove && !intentionalresting && iscarbon(src) && client && client.prefs && client.prefs.autostand)//CIT CHANGE - adds autostanding as a preference - resist_a_rest(TRUE)//CIT CHANGE - ditto + addtimer(CALLBACK(src, .proc/resist_a_rest, TRUE), 0) //CIT CHANGE - ditto return canmove /mob/living/proc/AddAbility(obj/effect/proc_holder/A) diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 2cfeec0276..7c377ffa22 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -52,8 +52,9 @@ icon_state = "apc0" use_power = NO_POWER_USE req_access = null - max_integrity = 200 + max_integrity = 300 integrity_failure = 50 + var/damage_deflection = 10 resistance_flags = FIRE_PROOF interaction_flags_machine = INTERACT_MACHINE_WIRES_IF_OPEN | INTERACT_MACHINE_ALLOW_SILICON | INTERACT_MACHINE_OPEN_SILICON @@ -150,7 +151,7 @@ if (!req_access) req_access = list(ACCESS_ENGINE_EQUIP) if (!armor) - armor = list("melee" = 20, "bullet" = 20, "laser" = 10, "energy" = 100, "bomb" = 30, "bio" = 100, "rad" = 100, "fire" = 90, "acid" = 50) + armor = list("melee" = 40, "bullet" = 40, "laser" = 40, "energy" = 100, "bomb" = 30, "bio" = 100, "rad" = 100, "fire" = 90, "acid" = 50) ..() GLOB.apcs_list += src @@ -742,6 +743,11 @@ if(!(flags_1 & NODECONSTRUCT_1)) set_broken() +/obj/machinery/power/apc/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir) + if(damage_flag == "melee" && damage_amount < damage_deflection) + return 0 + . = ..() + /obj/machinery/power/apc/deconstruct(disassembled = TRUE) if(!(flags_1 & NODECONSTRUCT_1)) if(!(stat & BROKEN)) diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 2f9221e986..ffc7e71c75 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -177,6 +177,7 @@ ammo_type = list(/obj/item/ammo_casing/energy/wormhole, /obj/item/ammo_casing/energy/wormhole/orange) item_state = null icon_state = "wormhole_projector" + pin = null var/obj/effect/portal/p_blue var/obj/effect/portal/p_orange var/atmos_link = FALSE diff --git a/code/modules/reagents/reagent_containers/patch.dm b/code/modules/reagents/reagent_containers/patch.dm index b11ef878b6..d4111467ba 100644 --- a/code/modules/reagents/reagent_containers/patch.dm +++ b/code/modules/reagents/reagent_containers/patch.dm @@ -14,6 +14,8 @@ /obj/item/reagent_containers/pill/patch/attack(mob/living/L, mob/user) if(ishuman(L)) var/obj/item/bodypart/affecting = L.get_bodypart(check_zone(user.zone_selected)) + if(!L.can_inject(user, 1, affecting)) //like monkey code, thickmaterial stops patches + return if(!affecting) to_chat(user, "The limb is missing!") return diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm index 461294d24d..d33e10f9d9 100644 --- a/code/modules/research/designs/medical_designs.dm +++ b/code/modules/research/designs/medical_designs.dm @@ -185,6 +185,7 @@ category = list("Medical Designs") departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + ///////////////////////////////////////// //////////Alien Surgery Tools//////////// ///////////////////////////////////////// @@ -605,3 +606,95 @@ id = "surgery_zombie" surgery = /datum/surgery/advanced/necrotic_revival research_icon_state = "surgery_head" + +///////////////////////////////////////// +////////////Medical Prosthetics////////// +///////////////////////////////////////// + +/datum/design/basic_l_arm + name = "Surplus prosthetic left arm" + desc = "Basic outdated and fragile prosthetic left arm." + id = "basic_l_arm" + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_GLASS = 2500) + construction_time = 20 + build_path = /obj/item/bodypart/l_arm/robot/surplus + category = list("Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/basic_r_arm + name = "Surplus prosthetic right arm" + desc = "Basic outdated and fragile prosthetic left arm." + id = "basic_r_arm" + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_GLASS = 2500) + construction_time = 20 + build_path = /obj/item/bodypart/r_arm/robot/surplus + category = list("Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/basic_l_leg + name = "Surplus prosthetic left leg" + desc = "Basic outdated and fragile prosthetic left leg." + id = "basic_l_leg" + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_GLASS = 2500) + construction_time = 20 + build_path = /obj/item/bodypart/l_leg/robot/surplus + category = list("Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/basic_r_leg + name = "Surplus prosthetic right leg" + desc = "Basic outdated and fragile prosthetic right leg." + id = "basic_r_leg" + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_GLASS = 2500) + construction_time = 20 + build_path = /obj/item/bodypart/r_leg/robot/surplus + category = list("Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/adv_r_leg + name = "Advanced prosthetic right leg" + desc = "A renforced prosthetic right leg." + id = "adv_r_leg" + build_type = PROTOLATHE + materials = list(MAT_METAL = 6000, MAT_GLASS = 3500, MAT_GOLD = 500, MAT_TITANIUM = 800) + construction_time = 40 + build_path = /obj/item/bodypart/r_leg/robot/surplus_upgraded + category = list("Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/adv_l_leg + name = "Advanced prosthetic left leg" + desc = "A renforced prosthetic left leg." + id = "adv_l_leg" + build_type = PROTOLATHE + materials = list(MAT_METAL = 6000, MAT_GLASS = 3500, MAT_GOLD = 500, MAT_TITANIUM = 800) + construction_time = 40 + build_path = /obj/item/bodypart/l_leg/robot/surplus_upgraded + category = list("Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/adv_l_arm + name = "Advanced prosthetic left arm" + desc = "A renforced prosthetic left arm." + id = "adv_l_arm" + build_type = PROTOLATHE + materials = list(MAT_METAL = 6000, MAT_GLASS = 3500, MAT_GOLD = 500, MAT_TITANIUM = 800) + construction_time = 40 + build_path = /obj/item/bodypart/l_arm/robot/surplus_upgraded + category = list("Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/adv_r_arm + name = "Advanced prosthetic right arm" + desc = "A renforced prosthetic right arm." + id = "adv_r_arm" + build_type = PROTOLATHE + materials = list(MAT_METAL = 6000, MAT_GLASS = 3500, MAT_GOLD = 500, MAT_TITANIUM = 800) + construction_time = 40 + build_path = /obj/item/bodypart/r_arm/robot/surplus_upgraded + category = list("Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index 40fc27a166..6e3b6dc61e 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -71,6 +71,24 @@ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) export_price = 5000 +/datum/techweb_node/surplus_lims + id = "surplus_lims" + display_name = "Basic Prosthetics" + description = "Basic fragile lims for the impaired." + prereq_ids = list("biotech") + design_ids = list("basic_l_arm", "basic_r_arm", "basic_r_leg", "basic_l_leg") + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1000) // You can knock them off with a glass shard... + export_price = 5000 + +/datum/techweb_node/advance_lims + id = "advance_lims" + display_name = "Upgraded Prosthetics" + description = "Reinforced prosthetics for the impaired." + prereq_ids = list("adv_biotech", "surplus_lims") + design_ids = list("adv_l_arm", "adv_r_arm", "adv_r_leg", "adv_l_leg") + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) + export_price = 5000 + /////////////////////////Advanced Surgery///////////////////////// /datum/techweb_node/adv_surgery id = "adv_surgery" diff --git a/code/modules/surgery/bodyparts/helpers.dm b/code/modules/surgery/bodyparts/helpers.dm index 7d337c67c2..9d9e26c6fa 100644 --- a/code/modules/surgery/bodyparts/helpers.dm +++ b/code/modules/surgery/bodyparts/helpers.dm @@ -305,3 +305,10 @@ else S.adjusted = ALT_STYLE H.update_inv_shoes() + if(H.wear_suit) + var/obj/item/clothing/suit/S = H.wear_suit + if(swap_back) + S.adjusted = NORMAL_STYLE + else + S.adjusted = ALT_STYLE + H.update_inv_wear_suit() \ No newline at end of file diff --git a/code/modules/surgery/bodyparts/robot_bodyparts.dm b/code/modules/surgery/bodyparts/robot_bodyparts.dm index c535ef4a20..ab31d64034 100644 --- a/code/modules/surgery/bodyparts/robot_bodyparts.dm +++ b/code/modules/surgery/bodyparts/robot_bodyparts.dm @@ -235,7 +235,7 @@ - +// Surplus lims /obj/item/bodypart/l_arm/robot/surplus name = "surplus prosthetic left arm" desc = "A skeletal, robotic limb. Outdated and fragile, but it's still better than nothing." @@ -268,6 +268,38 @@ burn_reduction = 0 max_damage = 20 +// Upgraded Surplus lims +/obj/item/bodypart/l_arm/robot/surplus_upgraded + name = "reinforced surplus prosthetic left arm" + desc = "A skeletal, robotic limb. This one is reinforced to provide better protection." + icon = 'icons/mob/augmentation/surplus_augments.dmi' + brute_reduction = 1 + burn_reduction = 1 + max_damage = 30 + +/obj/item/bodypart/r_arm/robot/surplus_upgraded + name = "reinforced surplus prosthetic right arm" + desc = "A skeletal, robotic limb. This one is reinforced to provide better protection." + icon = 'icons/mob/augmentation/surplus_augments.dmi' + brute_reduction = 1 + burn_reduction = 1 + max_damage = 30 + +/obj/item/bodypart/l_leg/robot/surplus_upgraded + name = "reinforced surplus prosthetic left leg" + desc = "A skeletal, robotic limb. This one is reinforced to provide better protection." + icon = 'icons/mob/augmentation/surplus_augments.dmi' + brute_reduction = 1 + burn_reduction = 1 + max_damage = 30 + +/obj/item/bodypart/r_leg/robot/surplus_upgraded + name = "reinforced surplus prosthetic right leg" + desc = "A skeletal, robotic limb. This one is reinforced to provide better protection." + icon = 'icons/mob/augmentation/surplus_augments.dmi' + brute_reduction = 1 + burn_reduction = 1 + max_damage = 30 #undef ROBOTIC_LIGHT_BRUTE_MSG #undef ROBOTIC_MEDIUM_BRUTE_MSG diff --git a/dependencies.sh b/dependencies.sh index 1b61b37c88..644cdd3acc 100644 --- a/dependencies.sh +++ b/dependencies.sh @@ -3,11 +3,12 @@ #Project dependencies file #Final authority on what's required to fully build the project -#byond version -#note, this also needs to be changed in the Dockerfile's initial FROM command -#If someone has an idea for how to set that version within the Dockerfile itself without any other dependencies, feel free to PR it -export BYOND_MAJOR=512 -export BYOND_MINOR=1448 +# byond version +# Extracted from the Dockerfile. Change by editing Dockerfile's FROM command. +LIST=($(sed -n 's/.*byond:\([0-9]\+\)\.\([0-9]\+\).*/\1 \2/p' Dockerfile)) +export BYOND_MAJOR=${LIST[0]} +export BYOND_MINOR=${LIST[1]} +unset LIST #rust_g git tag export RUST_G_VERSION=0.4.1 diff --git a/html/changelogs/AutoChangeLog-pr-7451.yml b/html/changelogs/AutoChangeLog-pr-7451.yml new file mode 100644 index 0000000000..ea4ec47b8d --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7451.yml @@ -0,0 +1,4 @@ +author: "deathride58" +delete-after: True +changes: + - admin: "When a gamemode fails pre_setup, it will now send a message in admin IRC and in ingame admin chat, instead of only being viewable in the logs." diff --git a/html/changelogs/AutoChangeLog-pr-7465.yml b/html/changelogs/AutoChangeLog-pr-7465.yml new file mode 100644 index 0000000000..4f47fed4e5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7465.yml @@ -0,0 +1,4 @@ +author: "deathride58" +delete-after: True +changes: + - balance: "Portal guns now spawn without firing pins." diff --git a/html/changelogs/AutoChangeLog-pr-7620.yml b/html/changelogs/AutoChangeLog-pr-7620.yml new file mode 100644 index 0000000000..b786b77476 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7620.yml @@ -0,0 +1,4 @@ +author: "deathride58" +delete-after: True +changes: + - bugfix: "Airlock wires now work as they did prior to the hard sync" diff --git a/html/changelogs/AutoChangeLog-pr-7624.yml b/html/changelogs/AutoChangeLog-pr-7624.yml new file mode 100644 index 0000000000..34f23f6560 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7624.yml @@ -0,0 +1,9 @@ +author: "deathride58" +delete-after: True +changes: + - balance: "The thing you're currently grabbing is now taken into account when left-click disarming. Things you have grabbed now roughly have a 45% chance to be disarmed." + - balance: "Disarm push rolls are now determined by the target's staminaloss rather than a flat number." + - balance: "When you're in combat mode, pushing someone who isn't in combat mode is a guaranteed knockdown. Hard counter to stam regen squeezing in melee combat." + - balance: "Failed disarm push attempts now deals light staminaloss to the target so long as both the attacker and target are standing. The total stamloss dealt to the target is random, clocking in at a very inefficient 1-5 stamloss per unsuccessful push attempt." + - tweak: "Disarm pushes now play the thudswoosh sound regardless if they're successful or not. Had it not been for copyright, I would've used L4D's melee sound." + - tweak: "Disarm push attempts are now logged" diff --git a/html/changelogs/AutoChangeLog-pr-7625.yml b/html/changelogs/AutoChangeLog-pr-7625.yml new file mode 100644 index 0000000000..a6e72eab8f --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7625.yml @@ -0,0 +1,7 @@ +author: "Poojawa" +delete-after: True +changes: + - refactor: "improved vore sound responsiveness to preference choices." + - balance: "removed morphine from Medihound sleeper chemical list" + - bugfix: "fixed preference setting being broken" + - refactor: "Medihound sleepers are Initialized properly, and icons update correctly now on eject" diff --git a/html/changelogs/AutoChangeLog-pr-7626.yml b/html/changelogs/AutoChangeLog-pr-7626.yml new file mode 100644 index 0000000000..000c39c0cd --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7626.yml @@ -0,0 +1,4 @@ +author: "Poojawa" +delete-after: True +changes: + - tweak: "Air alarm All clear color changed from green to blue" diff --git a/html/changelogs/AutoChangeLog-pr-7627.yml b/html/changelogs/AutoChangeLog-pr-7627.yml new file mode 100644 index 0000000000..2490900f6a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7627.yml @@ -0,0 +1,4 @@ +author: "Poojawa" +delete-after: True +changes: + - balance: "APCs are harder to destroy." diff --git a/html/changelogs/AutoChangeLog-pr-7630.yml b/html/changelogs/AutoChangeLog-pr-7630.yml new file mode 100644 index 0000000000..4f2d6081a0 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7630.yml @@ -0,0 +1,5 @@ +author: "Tupinambis" +delete-after: True +changes: + - tweak: "Changes large parts of the nuclear operative base, including the addition of a new barracks where the ops spawn, a personal bedroom for the leader, the rearrangement of numerous rooms, some added fluff, a slightly more roomy bar, a larger hanger, a kitchen, and various other small changes to make the base feel just a bit more alive. This was achieved by completely redoing the base from scratch so there was room to work with, as a result potential bugs could crop, please do report them." + - bugfix: "The drop pod chamber was airless. This seems like an oversight, and has been filled with air." diff --git a/html/changelogs/AutoChangeLog-pr-7631.yml b/html/changelogs/AutoChangeLog-pr-7631.yml new file mode 100644 index 0000000000..4dc1e42bf3 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7631.yml @@ -0,0 +1,4 @@ +author: "nicc" +delete-after: True +changes: + - rscadd: "*dab" diff --git a/html/changelogs/AutoChangeLog-pr-7632.yml b/html/changelogs/AutoChangeLog-pr-7632.yml new file mode 100644 index 0000000000..69bac5623f --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7632.yml @@ -0,0 +1,5 @@ +author: "Poojawa" +delete-after: True +changes: + - rscadd: "Added Digitigrade versions of everything appliciable in suit.dmi" + - imageadd: "Snowflake Icons weren't modified, and were given NO_MUTANTRACE_VARIATION" diff --git a/html/changelogs/AutoChangeLog-pr-7639.yml b/html/changelogs/AutoChangeLog-pr-7639.yml new file mode 100644 index 0000000000..8ecd3c4c5c --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7639.yml @@ -0,0 +1,6 @@ +author: "Poojawa" +delete-after: True +changes: + - imageadd: "naga and quad Taurs literally don't freeze their ass off in space anymore." + - bugfix: "Digitigrade legs will toggle on/off properly on character menue" + - bugfix: "The misleading \"normal\" has been removed from species options" diff --git a/html/changelogs/AutoChangeLog-pr-7640.yml b/html/changelogs/AutoChangeLog-pr-7640.yml new file mode 100644 index 0000000000..7360022b33 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7640.yml @@ -0,0 +1,4 @@ +author: "Poojawa" +delete-after: True +changes: + - balance: "Added sanity checks to emag usage" diff --git a/html/changelogs/AutoChangeLog-pr-7643.yml b/html/changelogs/AutoChangeLog-pr-7643.yml new file mode 100644 index 0000000000..c74534bd34 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7643.yml @@ -0,0 +1,4 @@ +author: "CameronWoof" +delete-after: True +changes: + - rscadd: "Medihounds now have rollerbeds for non-vore patient transport" diff --git a/html/changelogs/AutoChangeLog-pr-7650.yml b/html/changelogs/AutoChangeLog-pr-7650.yml new file mode 100644 index 0000000000..ba84b55d33 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7650.yml @@ -0,0 +1,4 @@ +author: "deathride58" +delete-after: True +changes: + - bugfix: "Autostand no longer makes you invulnerable to dropping items when being knocked down with a force greater than 80" diff --git a/html/changelogs/AutoChangeLog-pr-7652.yml b/html/changelogs/AutoChangeLog-pr-7652.yml new file mode 100644 index 0000000000..4695db6186 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7652.yml @@ -0,0 +1,6 @@ +author: "Toriate" +delete-after: True +changes: + - imageadd: "All regular crates are now 3/4ths ToriCrates +iamgeadd: Unused plastic crate sprite added" + - rscadd: "Blood freezer crates now have unique sprites." diff --git a/html/changelogs/AutoChangeLog-pr-7653.yml b/html/changelogs/AutoChangeLog-pr-7653.yml new file mode 100644 index 0000000000..a761e5d393 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7653.yml @@ -0,0 +1,4 @@ +author: "deathride58" +delete-after: True +changes: + - bugfix: "You can no longer abuse an href exploit to return from the labor camp before obtaining enough points to satisfy your point goal." diff --git a/html/changelogs/AutoChangeLog-pr-7658.yml b/html/changelogs/AutoChangeLog-pr-7658.yml new file mode 100644 index 0000000000..bcbff333a4 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7658.yml @@ -0,0 +1,4 @@ +author: "deathride58" +delete-after: True +changes: + - bugfix: "Norko's donor item is now listed in the right category" diff --git a/html/changelogs/AutoChangeLog-pr-7660.yml b/html/changelogs/AutoChangeLog-pr-7660.yml new file mode 100644 index 0000000000..825553bbcb --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7660.yml @@ -0,0 +1,4 @@ +author: "CameronWoof" +delete-after: True +changes: + - bugfix: "The closed O2 crate now uses the same color scheme as the open one" diff --git a/html/changelogs/AutoChangeLog-pr-7664.yml b/html/changelogs/AutoChangeLog-pr-7664.yml new file mode 100644 index 0000000000..47be323084 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7664.yml @@ -0,0 +1,4 @@ +author: "deathride58" +delete-after: True +changes: + - bugfix: "AOOC no longer prints to players in the lobby" diff --git a/html/changelogs/AutoChangeLog-pr-7666.yml b/html/changelogs/AutoChangeLog-pr-7666.yml new file mode 100644 index 0000000000..0b6183b403 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7666.yml @@ -0,0 +1,4 @@ +author: "Tupinambis" +delete-after: True +changes: + - rscadd: "Cryo Sleepers have been added to Perma on all four maps in rotation. the bathroom windoor and window have switched places to accommodate this change." diff --git a/html/changelogs/AutoChangeLog-pr-7667.yml b/html/changelogs/AutoChangeLog-pr-7667.yml new file mode 100644 index 0000000000..c27be81efd --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7667.yml @@ -0,0 +1,8 @@ +author: "Poojawa" +delete-after: True +changes: + - bugfix: "fixed vtech, but it still doesn't work because of overriding jog/sprint mechanics from combat reworks." + - bugfix: "Puppy jaws properly store if you're emagged, they are also toggle-able for stealth like the tongue." + - bugfix: "Digitigrade legs should properly fucking update for the last fucking time. Fucking snowflake code. +refractor: Got rid of snowflake sechound cuffs, gave them normal zipties like regular secborgs." + - bugfix: "dogborg sleepers actually extinguish people who are on fire, in case you don't have time to lick them out." diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi index 39726a6ece..1d99a415df 100644 Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ diff --git a/icons/mob/mask.dmi b/icons/mob/mask.dmi index 46b229388d..18b323c997 100644 Binary files a/icons/mob/mask.dmi and b/icons/mob/mask.dmi differ diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 4bc07f86f5..f74ca2092d 100644 Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index a9d1398c20..73f3065b4f 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 12dd04004b..a474b5f285 100644 Binary files a/icons/obj/clothing/masks.dmi and b/icons/obj/clothing/masks.dmi differ diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index 3737ee694e..c3eb8b995c 100644 Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ diff --git a/icons/obj/crates.dmi b/icons/obj/crates.dmi index 508ae18c60..4165719a3c 100644 Binary files a/icons/obj/crates.dmi and b/icons/obj/crates.dmi differ diff --git a/icons/obj/monitors.dmi b/icons/obj/monitors.dmi index 07fc6f035e..f338ffcf3d 100644 Binary files a/icons/obj/monitors.dmi and b/icons/obj/monitors.dmi differ diff --git a/modular_citadel/code/game/objects/ids.dm b/modular_citadel/code/game/objects/ids.dm index 5d67c18416..89a3c0f0c2 100644 --- a/modular_citadel/code/game/objects/ids.dm +++ b/modular_citadel/code/game/objects/ids.dm @@ -81,16 +81,3 @@ to_chat(user, "[ER] has no charges left.") return . = ..() - -/obj/item/card/emag/afterattack(atom/target, mob/user, proximity) - if(!uses) - user.visible_message("[src] emits a weak spark. It's burnt out!") - playsound(src, 'sound/effects/light_flicker.ogg', 100, 1) - return - . = ..() - uses = max(uses - 1, 0) - if(!uses) - user.visible_message("[src] fizzles and sparks. It seems like it's out of charges.") - playsound(src, 'sound/effects/light_flicker.ogg', 100, 1) - else if(uses <= 3) - playsound(src, 'sound/effects/light_flicker.ogg', 30, 1) //Tiiiiiiny warning sound to let ya know your emag's almost dead diff --git a/modular_citadel/code/game/objects/items/robot/robot_upgrades.dm b/modular_citadel/code/game/objects/items/robot/robot_upgrades.dm index 279685e94a..5f65b97173 100644 --- a/modular_citadel/code/game/objects/items/robot/robot_upgrades.dm +++ b/modular_citadel/code/game/objects/items/robot/robot_upgrades.dm @@ -1,4 +1,4 @@ -//V-tech kicked in yo +// Citadel's Vtech Controller /obj/effect/proc_holder/silicon/cyborg/vtecControl name = "vTec Control" desc = "Allows finer-grained control of the vTec speed boost." @@ -10,7 +10,6 @@ /obj/effect/proc_holder/silicon/cyborg/vtecControl/Click(mob/living/silicon/robot/user) - var/mob/living/silicon/robot/self = usr currentState = (currentState + 1) % 3 @@ -18,11 +17,11 @@ if(usr) switch(currentState) if (0) - self.speed += maxReduction + self.speed = maxReduction if (1) self.speed -= maxReduction*0.5 if (2) - self.speed -= maxReduction*0.5 + self.speed -= maxReduction*1.25 action.button_icon_state = "Chevron_State_[currentState]" action.UpdateButtonIcon() diff --git a/modular_citadel/code/modules/admin/chat_commands.dm b/modular_citadel/code/modules/admin/chat_commands.dm index 9cd25d328c..fe9716dc9c 100644 --- a/modular_citadel/code/modules/admin/chat_commands.dm +++ b/modular_citadel/code/modules/admin/chat_commands.dm @@ -4,7 +4,14 @@ /datum/tgs_chat_command/wheelofsalt/Run(datum/tgs_chat_user/sender, params) var/saltresult = "The wheel of salt [pick("clatters","vibrates","clanks","groans","moans","squeaks","emits a[pick(" god-forsaken"," lewd"," creepy"," generic","n orgasmic")] [pick("airhorn","bike horn","trumpet","clown","latex","vore","dog")] noise")] as it spins violently... And it seems the salt of the day is the " - var/saltprimarysubject = "[pick("combat","medical","grab","furry","wall","orgasm","cat","ERP","lizard","dog","latex","vision cone","atmospherics","table","chem","vore","dogborg","Skylar Lineman","Mekhi Anderson","Peppermint","rework","cum","dick","cockvore")]" - var/saltsecondarysubject = "[pick("rework","changes","r34","ban","removal","addition","leak","proposal","fanart","introduction","tabling","ERP")]" + var/saltprimarysubject = "[pick("combat","medical","grab","furry","wall","orgasm","cat","ERP","lizard","dog","latex","vision cone","atmospherics","table","chem","vore","dogborg","Skylar Lineman","Mekhi Anderson","Peppermint","rework","cum","dick","cockvore","Medihound","sleeper","belly sleeper","door wires","flightsuit","coder privilege","Developer abuse","ban reason","github self merge")]" + var/saltsecondarysubject = "[pick("rework","changes","r34","ban","removal","addition","leak","proposal","fanart","introduction","tabling","ERP","bikeshedding","sprites","semen keg","argument")]" saltresult += "[saltprimarysubject] [saltsecondarysubject]" return "[saltresult]!" + +/datum/tgs_chat_command/despacito + name = "play despacito" //someone please high effort this sometime and make it a full on ytdl search + help_text = "This is so sad." + +/datum/tgs_chat_command/despacito/Run() + return "https://www.youtube.com/watch?v=kJQP7kiw5Fk" diff --git a/modular_citadel/code/modules/client/loadout/__donator.dm b/modular_citadel/code/modules/client/loadout/__donator.dm index 8135532d85..6893eca14a 100644 --- a/modular_citadel/code/modules/client/loadout/__donator.dm +++ b/modular_citadel/code/modules/client/loadout/__donator.dm @@ -258,7 +258,7 @@ datum/gear/darksabresheath category = SLOT_IN_BACKPACK path = /obj/item/reagent_containers/food/drinks/flask/steel cost = 2 - ckeywhitelist = list("johnnyvitrano") + ckeywhitelist = list("nik707") /datum/gear/paperhat name = "Paper Hat" @@ -331,4 +331,11 @@ datum/gear/darksabresheath name = "Divine robes" category = SLOT_W_UNIFORM path = /obj/item/clothing/under/lunasune - ckeywhitelist = list("invader4352") \ No newline at end of file + ckeywhitelist = list("invader4352") + +/datum/gear/gothcoat + name = "Goth Coat" + category = SLOT_WEAR_SUIT + path = /obj/item/clothing/suit/gothcoat + ckeywhitelist = list("norko") + diff --git a/modular_citadel/code/modules/clothing/spacesuits/cydonian_armor.dm b/modular_citadel/code/modules/clothing/spacesuits/cydonian_armor.dm index 209c2d0448..1d896952c4 100644 --- a/modular_citadel/code/modules/clothing/spacesuits/cydonian_armor.dm +++ b/modular_citadel/code/modules/clothing/spacesuits/cydonian_armor.dm @@ -18,6 +18,7 @@ allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator) var/energy_color = "#35FFF0" var/obj/item/clothing/suit/space/hardsuit/lavaknight/linkedsuit = null + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/head/helmet/space/hardsuit/lavaknight/New() ..() diff --git a/modular_citadel/code/modules/clothing/suits/suits.dm b/modular_citadel/code/modules/clothing/suits/suits.dm index 8d7de7be01..22e4aef6a9 100644 --- a/modular_citadel/code/modules/clothing/suits/suits.dm +++ b/modular_citadel/code/modules/clothing/suits/suits.dm @@ -11,6 +11,7 @@ alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi' icon_state = "hostrench" item_state = "hostrench" + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/hooded/cloak/david name = "red cloak" @@ -18,12 +19,14 @@ desc = "Ever wanted to look like a badass without ANY effort? Try this nanotrasen brand red cloak, perfect for kids" hoodtype = /obj/item/clothing/head/hooded/cloakhood/david body_parts_covered = CHEST|GROIN|ARMS + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/head/hooded/cloakhood/david name = "red cloak hood" icon_state = "golhood" desc = "conceal your face in shame with this nanotrasen brand hood" flags_inv = HIDEEARS|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/flakjack name = "flak jacket" @@ -35,4 +38,5 @@ blood_overlay_type = "armor" body_parts_covered = CHEST resistance_flags = NONE + mutantrace_variation = NO_MUTANTRACE_VARIATION armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 5, "bio" = 0, "rad" = 0, "fire" = -5, "acid" = -15) //nylon sucks against acid \ No newline at end of file diff --git a/modular_citadel/code/modules/custom_loadout/custom_items.dm b/modular_citadel/code/modules/custom_loadout/custom_items.dm index a243d48e27..8e26f8014f 100644 --- a/modular_citadel/code/modules/custom_loadout/custom_items.dm +++ b/modular_citadel/code/modules/custom_loadout/custom_items.dm @@ -78,6 +78,7 @@ icon_state = "labred" alternate_worn_icon = 'icons/mob/custom_w.dmi' item_state = "labred" + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/clothing/suit/toggle/labcoat/labredblack name = "Black and Red Coat" @@ -86,6 +87,7 @@ icon_state = "labredblack" alternate_worn_icon = 'icons/mob/custom_w.dmi' item_state = "labredblack" + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/toy/plush/carrot name = "carrot plushie" @@ -191,6 +193,7 @@ alternate_worn_icon = 'icons/mob/custom_w.dmi' item_state = "hos-g" body_parts_covered = CHEST|GROIN|ARMS|LEGS + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/reagent_containers/food/drinks/flask/russian name = "russian flask" @@ -272,6 +275,7 @@ /obj/item/clothing/under/bb_sweater/black/naomi name = "worn black sweater" + mutantrace_variation = NO_MUTANTRACE_VARIATION desc = "A well-loved sweater, showing signs of several cleanings and re-stitchings. And a few stains. Is that cat fur?" /obj/item/clothing/neck/petcollar/naomi @@ -344,6 +348,7 @@ item_state = "darkcarapace" blood_overlay_type = "armor" dog_fashion = /datum/dog_fashion/back + mutantrace_variation = NO_MUTANTRACE_VARIATION armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) @@ -370,6 +375,7 @@ icon_state = "rdcoat" alternate_worn_icon = 'icons/mob/custom_w.dmi' item_state = "rdcoat" + mutantrace_variation = NO_MUTANTRACE_VARIATION /obj/item/custom/leechjar name = "Jar of Leeches" diff --git a/modular_citadel/code/modules/mob/cit_emotes.dm b/modular_citadel/code/modules/mob/cit_emotes.dm index 920c543e84..b80425e59a 100644 --- a/modular_citadel/code/modules/mob/cit_emotes.dm +++ b/modular_citadel/code/modules/mob/cit_emotes.dm @@ -160,3 +160,24 @@ user.nextsoundemote = world.time + 7 playsound(user, 'modular_citadel/sound/voice/weh.ogg', 50, 1, -1) . = ..() + +/datum/emote/living/dab + key = "dab" + key_third_person = "suddenly hits a dab" + message = "suddenly hits a dab!" + emote_type = EMOTE_AUDIBLE + + + +/datum/emote/living/dab/run_emote(mob/living/user, params) + if (ishuman(user)) + var/def_zone = BODY_ZONE_CHEST + var/luck = (rand(1,100)) + if(luck >= 65) + user.adjustStaminaLoss(70) + if(luck >= 80) + def_zone = pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM) + user.apply_damage(20, BRUTE, def_zone) + if(luck >= 95) + user.adjustBrainLoss(100) + . = ..() \ No newline at end of file diff --git a/modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm b/modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm index 0b4e744772..2fab508fd0 100644 --- a/modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm +++ b/modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm @@ -1,16 +1,16 @@ /datum/sprite_accessory var/extra = FALSE - var/extra_icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' var/extra_color_src = MUTCOLORS2 //The color source for the extra overlay. var/extra2 = FALSE - var/extra2_icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + var/extra_icon = 'modular_citadel/icons/mob/mam_tails.dmi' + var/extra2_icon = 'modular_citadel/icons/mob/mam_tails.dmi' var/extra2_color_src = MUTCOLORS3 var/list/ckeys_allowed /* tbi eventually idk /datum/sprite_accessory/legs/digitigrade_mam name = "Anthro Digitigrade Legs" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' */ /datum/sprite_accessory/moth_wings/none @@ -37,128 +37,123 @@ name = "Red Panda" icon_state = "ailurus" color_src = 0 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/axolotl name = "Axolotl" icon_state = "axolotl" + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/tails/human/axolotl name = "Axolotl" icon_state = "axolotl" + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/axolotl name = "Axolotl" icon_state = "axolotl" + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/bear name = "Bear" icon_state = "bear" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/tails/human/bear name = "Bear" icon_state = "bear" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/bear name = "Bear" icon_state = "bear" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails/human/catbig name = "Cat, Big" icon_state = "catbig" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/catbig name = "Cat, Big" icon_state = "catbig" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/cow name = "Cow" icon_state = "cow" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' gender_specific = 1 /datum/sprite_accessory/tails/human/cow name = "Cow" icon_state = "cow" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/cow name = "Cow" icon_state = "cow" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/curled name = "Curled Horn" icon_state = "horn1" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' color_src = MUTCOLORS3 -/datum/sprite_accessory/tails/human/eevee - name = "Eevee" - icon_state = "eevee" - extra = TRUE - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' - /datum/sprite_accessory/ears/human/eevee name = "Eevee" icon_state = "eevee" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' + +/datum/sprite_accessory/tails/human/eevee + name = "Eevee" + icon_state = "eevee" + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/eevee name = "Eevee" icon_state = "eevee" - extra = TRUE - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/elephant name = "Elephant" icon_state = "elephant" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' - -//datum/sprite_accessory/ears/elf -// name = "Elf" -// icon_state = "elf" -// icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' -// ckeys_allowed = list("atiefling") + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/ears/fennec name = "Fennec" icon_state = "fennec" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' hasinner = 1 /datum/sprite_accessory/tails/human/fennec name = "Fennec" icon_state = "fennec" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/fennec name = "Fennec" icon_state = "fennec" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/fish name = "Fish" icon_state = "fish" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' color_src = MUTCOLORS3 /datum/sprite_accessory/tails/human/fish name = "Fish" icon_state = "fish" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' extra = TRUE extra_color_src = MUTCOLORS3 /datum/sprite_accessory/tails_animated/human/fish name = "Fish" icon_state = "fish" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' extra = TRUE extra_color_src = MUTCOLORS3 @@ -166,53 +161,53 @@ name = "Fox" icon_state = "fox" hasinner = 1 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/tails/human/fox name = "Fox" icon_state = "fox" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' extra = TRUE /datum/sprite_accessory/tails_animated/human/fox name = "Fox" icon_state = "fox" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' extra = TRUE /datum/sprite_accessory/tails/human/horse name = "Horse" icon_state = "horse" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' color_src = HAIR /datum/sprite_accessory/tails_animated/human/horse name = "Horse" icon_state = "horse" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' color_src = HAIR /datum/sprite_accessory/tails/human/husky name = "Husky" icon_state = "husky" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' extra = TRUE /datum/sprite_accessory/tails_animated/human/husky name = "Husky" icon_state = "husky" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' extra = TRUE /datum/sprite_accessory/tails/human/insect name = "Insect" icon_state = "insect" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/insect name = "insect" icon_state = "insect" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/jellyfish name = "Jellyfish" @@ -224,287 +219,295 @@ icon_state = "kitsune" extra = TRUE extra_color_src = MUTCOLORS2 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/kitsune name = "Kitsune" icon_state = "kitsune" extra = TRUE extra_color_src = MUTCOLORS2 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/lab name = "Dog, Floppy" icon_state = "lab" hasinner = 0 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/ears/murid name = "Murid" icon_state = "murid" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/tails/human/murid name = "Murid" icon_state = "murid" color_src = 0 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/murid name = "Murid" icon_state = "murid" color_src = 0 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/otie name = "Otusian" icon_state = "otie" hasinner= 1 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/tails/human/otie name = "Otusian" icon_state = "otie" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/otie name = "Otusian" icon_state = "otie" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails/orca name = "Orca" icon_state = "orca" extra = TRUE - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/orca name = "Orca" icon_state = "orca" extra = TRUE - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/pede name = "Scolipede" icon_state = "pede" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' - extra = TRUE + icon = 'modular_citadel/icons/mob/mam_ears.dmi' color_src = MUTCOLORS2 extra_color_src = MUTCOLORS3 /datum/sprite_accessory/tails/human/pede name = "Scolipede" icon_state = "pede" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' - extra = TRUE - extra2 = TRUE - color_src = MUTCOLORS - extra_color_src = MUTCOLORS2 - extra2_color_src = MUTCOLORS3 + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/pede name = "Scolipede" icon_state = "pede" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' - extra = TRUE - extra2 = TRUE - color_src = MUTCOLORS - extra_color_src = MUTCOLORS2 - extra2_color_src = MUTCOLORS3 + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/rabbit name = "Rabbit" icon_state = "rabbit" hasinner= 1 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/tails/human/rabbit name = "Rabbit" icon_state = "rabbit" color_src = 0 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/rabbit name = "Rabbit" icon_state = "rabbit" color_src = 0 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/sergal name = "Sergal" icon_state = "sergal" hasinner= 1 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/tails/human/sergal name = "Sergal" icon_state = "sergal" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/sergal name = "Sergal" icon_state = "sergal" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/human/skunk name = "skunk" icon_state = "skunk" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/tails/human/skunk name = "skunk" icon_state = "skunk" color_src = 0 + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/skunk name = "skunk" icon_state = "skunk" color_src = 0 + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails/human/shark name = "Shark" icon_state = "shark" color_src = MUTCOLORS - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails/human/shark/datashark name = "datashark" icon_state = "datashark" color_src = 0 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/squirrel name = "Squirrel" icon_state = "squirrel" hasinner= 1 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/tails/human/squirrel name = "Squirrel" icon_state = "squirrel" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/squirrel name = "Squirrel" icon_state = "squirrel" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails/human/yentacle name = "Tentacle" icon_state = "tentacle" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/tentacle name = "Tentacle" icon_state = "tentacle" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/ears/wolf name = "Wolf" icon_state = "wolf" hasinner = 1 - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/tails/human/wolf name = "Wolf" icon_state = "wolf" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/tails_animated/human/wolf name = "Wolf" icon_state = "wolf" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_tails.dmi' /****************************************** *************** Body Parts **************** *******************************************/ /datum/sprite_accessory/mam_ears - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + extra = TRUE + extra2 = TRUE + icon = 'modular_citadel/icons/mob/mam_ears.dmi' + extra_icon = 'modular_citadel/icons/mob/mam_ears.dmi' + extra2_icon = 'modular_citadel/icons/mob/mam_ears.dmi' + /datum/sprite_accessory/mam_ears/none name = "None" /datum/sprite_accessory/mam_tails - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + extra = TRUE + extra2 = TRUE + icon = 'modular_citadel/icons/mob/mam_tails.dmi' + extra_icon = 'modular_citadel/icons/mob/mam_tails.dmi' + extra2_icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/mam_tails/none name = "None" /datum/sprite_accessory/mam_tails_animated - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + extra = TRUE + extra2 = TRUE + icon = 'modular_citadel/icons/mob/mam_tails.dmi' + extra_icon = 'modular_citadel/icons/mob/mam_tails.dmi' + extra2_icon = 'modular_citadel/icons/mob/mam_tails.dmi' /datum/sprite_accessory/mam_tails_animated/none name = "None" +/datum/sprite_accessory/snouts + +/datum/sprite_accessory/snouts/none + name = "None" + icon_state = "none" + extra_icon = 'modular_citadel/icons/mob/mam_snouts.dmi' + extra2_icon = 'modular_citadel/icons/mob/mam_snouts.dmi' + + /****************************************** **************** Snouts ******************* *******************************************/ -/datum/sprite_accessory/snouts/none - name = "None" - icon_state = "none" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' - /datum/sprite_accessory/snouts/bird name = "Beak" icon_state = "bird" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' color_src = MUTCOLORS3 /datum/sprite_accessory/snouts/bigbeak name = "Big Beak" icon_state = "bigbeak" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' color_src = MUTCOLORS3 /datum/sprite_accessory/snouts/elephant name = "Elephant" icon_state = "elephant" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' extra = TRUE extra_color_src = MUTCOLORS3 /datum/sprite_accessory/snouts/lcanid name = "Fox, Long" icon_state = "lcanid" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' extra = TRUE /datum/sprite_accessory/snouts/scanid name = "Fox, Short" icon_state = "scanid" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' extra = TRUE /datum/sprite_accessory/snouts/wolf name = "Wolf" icon_state = "wolf" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' extra = TRUE /datum/sprite_accessory/snouts/rhino name = "Horn" icon_state = "rhino" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' extra = TRUE extra = MUTCOLORS3 /datum/sprite_accessory/snouts/husky name = "Husky" icon_state = "husky" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' extra = TRUE /datum/sprite_accessory/snouts/otie name = "Otie" icon_state = "otie" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' extra = TRUE /datum/sprite_accessory/snouts/pede name = "Scolipede" icon_state = "pede" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' extra = TRUE color_src = MUTCOLORS extra_color_src = MUTCOLORS2 @@ -512,17 +515,122 @@ /datum/sprite_accessory/snouts/sergal name = "Sergal" icon_state = "sergal" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' color_src = MUTCOLORS2 /datum/sprite_accessory/snouts/toucan name = "Toucan" icon_state = "toucan" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' + icon = 'modular_citadel/icons/mob/mam_snouts.dmi' color_src = MUTCOLORS3 /****************************************** -************ Actual Species *************** +***************** Ears ******************** +*******************************************/ + +/datum/sprite_accessory/mam_ears/axolotl + name = "Axolotl" + icon_state = "axolotl" + +/datum/sprite_accessory/mam_ears/bear + name = "Bear" + icon_state = "bear" + +/datum/sprite_accessory/mam_ears/catbig + name = "Cat, Big" + icon_state = "catbig" + hasinner = 1 + +/datum/sprite_accessory/mam_ears/cow + name = "Cow" + icon_state = "cow" + +/datum/sprite_accessory/mam_ears/deer + name = "Deer" + icon_state = "deer" + +/datum/sprite_accessory/mam_ears/eevee + name = "Eevee" + icon_state = "eevee" + +/datum/sprite_accessory/mam_ears/elephant + name = "Elephant" + icon_state = "elephant" + +/datum/sprite_accessory/mam_ears/fennec + name = "Fennec" + icon_state = "fennec" + hasinner = 1 + +/datum/sprite_accessory/mam_ears/fish + name = "Fish" + icon_state = "fish" + color_src = MUTCOLORS3 + +/datum/sprite_accessory/mam_ears/fox + name = "Fox" + icon_state = "fox" + hasinner = 1 + +/datum/sprite_accessory/mam_ears/husky + name = "Husky" + icon_state = "wolf" + +/datum/sprite_accessory/mam_ears/kangaroo + name = "kangaroo" + icon_state = "kangaroo" + +/datum/sprite_accessory/mam_ears/lab + name = "Dog, Long" + icon_state = "lab" + +/datum/sprite_accessory/mam_ears/murid + name = "Murid" + icon_state = "murid" + +/datum/sprite_accessory/mam_ears/neko + name = "Neko" + icon_state = "cat" + hasinner = 1 + color_src = HAIR + +/datum/sprite_accessory/mam_ears/otie + name = "Otusian" + icon_state = "otie" + hasinner= 1 + +/datum/sprite_accessory/mam_ears/squirrel + name = "Squirrel" + icon_state = "squirrel" + hasinner= 1 + +/datum/sprite_accessory/mam_ears/pede + name = "Scolipede" + icon_state = "pede" + color_src = MUTCOLORS2 + extra_color_src = MUTCOLORS3 + +/datum/sprite_accessory/mam_ears/rabbit + name = "Rabbit" + icon_state = "rabbit" + hasinner= 1 + +/datum/sprite_accessory/mam_ears/sergal + name = "Sergal" + icon_state = "sergal" + hasinner= 1 + +/datum/sprite_accessory/mam_ears/skunk + name = "skunk" + icon_state = "skunk" + +/datum/sprite_accessory/mam_ears/wolf + name = "Wolf" + icon_state = "wolf" + hasinner = 1 + +/****************************************** +*********** Tails and Things ************** *******************************************/ /datum/sprite_accessory/mam_tails/ailurus @@ -535,10 +643,6 @@ icon_state = "ailurus" extra = TRUE -/datum/sprite_accessory/mam_ears/axolotl - name = "Axolotl" - icon_state = "axolotl" - /datum/sprite_accessory/mam_tails/axolotl name = "Axolotl" icon_state = "axolotl" @@ -547,10 +651,6 @@ name = "Axolotl" icon_state = "axolotl" -/datum/sprite_accessory/mam_ears/bear - name = "Bear" - icon_state = "bear" - /datum/sprite_accessory/mam_tails/bear name = "Bear" icon_state = "bear" @@ -559,11 +659,6 @@ name = "Bear" icon_state = "bear" -/datum/sprite_accessory/mam_ears/catbig - name = "Cat, Big" - icon_state = "catbig" - hasinner = 1 - /datum/sprite_accessory/mam_tails/catbig name = "Cat, Big" icon_state = "catbig" @@ -572,11 +667,6 @@ name = "Cat, Big" icon_state = "catbig" -/datum/sprite_accessory/mam_ears/cow - name = "Cow" - icon_state = "cow" - gender_specific = 1 - /datum/sprite_accessory/mam_tail/cow name = "Cow" icon_state = "cow" @@ -589,33 +679,16 @@ name = "Curled Horn" icon_state = "horn1" -/datum/sprite_accessory/mam_ears/deer - name = "Deer" - icon_state = "deer" - /datum/sprite_accessory/mam_tails/eevee name = "Eevee" icon_state = "eevee" extra = TRUE -/datum/sprite_accessory/mam_ears/eevee - name = "Eevee" - icon_state = "eevee" - /datum/sprite_accessory/mam_tails_animated/eevee name = "Eevee" icon_state = "eevee" extra = TRUE -/datum/sprite_accessory/mam_ears/elephant - name = "Elephant" - icon_state = "elephant" - -/datum/sprite_accessory/mam_ears/fennec - name = "Fennec" - icon_state = "fennec" - hasinner = 1 - /datum/sprite_accessory/mam_tails/fennec name = "Fennec" icon_state = "fennec" @@ -624,11 +697,6 @@ name = "Fennec" icon_state = "fennec" -/datum/sprite_accessory/mam_ears/fish - name = "Fish" - icon_state = "fish" - color_src = MUTCOLORS3 - /datum/sprite_accessory/mam_tails/human/fish name = "Fish" icon_state = "fish" @@ -641,11 +709,6 @@ extra = TRUE extra_color_src = MUTCOLORS3 -/datum/sprite_accessory/mam_ears/fox - name = "Fox" - icon_state = "fox" - hasinner = 1 - /datum/sprite_accessory/mam_tails/fox name = "Fox" icon_state = "fox" @@ -674,12 +737,6 @@ icon_state = "Horse" color_src = HAIR -/datum/sprite_accessory/mam_ears/husky - name = "Husky" - icon_state = "wolf" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' - extra = TRUE - /datum/sprite_accessory/mam_tails/husky name = "Husky" icon_state = "husky" @@ -698,11 +755,6 @@ datum/sprite_accessory/mam_tails/insect name = "Insect" icon_state = "insect" -/datum/sprite_accessory/mam_ears/kangaroo - name = "kangaroo" - icon_state = "kangaroo" - extra = TRUE - /datum/sprite_accessory/mam_tails/kangaroo name = "kangaroo" icon_state = "kangaroo" @@ -726,10 +778,6 @@ datum/sprite_accessory/mam_tails/insect icon_state = "kitsune" extra = TRUE -/datum/sprite_accessory/mam_ears/lab - name = "Dog, Long" - icon_state = "lab" - /datum/sprite_accessory/mam_tails/lab name = "Lab" icon_state = "lab" @@ -738,10 +786,6 @@ datum/sprite_accessory/mam_tails/insect name = "Lab" icon_state = "lab" -/datum/sprite_accessory/mam_ears/murid - name = "Murid" - icon_state = "murid" - /datum/sprite_accessory/mam_tails/murid name = "Murid" icon_state = "murid" @@ -752,29 +796,15 @@ datum/sprite_accessory/mam_tails/insect icon_state = "murid" color_src = 0 -/datum/sprite_accessory/mam_ears/neko - name = "Neko" - icon_state = "cat" - hasinner = 1 - color_src = HAIR - icon = 'modular_citadel/icons/mob/mutant_bodyparts.dmi' - /datum/sprite_accessory/mam_tails/neko name = "Neko" icon_state = "cat" color_src = HAIR - icon = 'modular_citadel/icons/mob/mutant_bodyparts.dmi' /datum/sprite_accessory/mam_tails_animated/neko name = "Neko" icon_state = "cat" color_src = HAIR - icon = 'modular_citadel/icons/mob/mutant_bodyparts.dmi' - -/datum/sprite_accessory/mam_ears/otie - name = "Otusian" - icon_state = "otie" - hasinner= 1 /datum/sprite_accessory/mam_tails/otie name = "Otusian" @@ -794,38 +824,13 @@ datum/sprite_accessory/mam_tails/insect icon_state = "orca" extra = TRUE -/datum/sprite_accessory/mam_ears/pede - name = "Scolipede" - icon_state = "pede" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' - extra = TRUE - color_src = MUTCOLORS2 - extra_color_src = MUTCOLORS3 - /datum/sprite_accessory/mam_tails/pede name = "Scolipede" icon_state = "pede" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' - extra = TRUE - extra2 = TRUE - color_src = MUTCOLORS - extra_color_src = MUTCOLORS2 - extra2_color_src = MUTCOLORS3 /datum/sprite_accessory/mam_tails_animated/pede name = "Scolipede" icon_state = "pede" - icon = 'modular_citadel/icons/mob/mam_bodyparts.dmi' - extra = TRUE - extra2 = TRUE - color_src = MUTCOLORS - extra_color_src = MUTCOLORS2 - extra2_color_src = MUTCOLORS3 - -/datum/sprite_accessory/mam_ears/rabbit - name = "Rabbit" - icon_state = "rabbit" - hasinner= 1 /datum/sprite_accessory/mam_tails/rabbit name = "Rabbit" @@ -835,11 +840,6 @@ datum/sprite_accessory/mam_tails/insect name = "Rabbit" icon_state = "rabbit" -/datum/sprite_accessory/mam_ears/sergal - name = "Sergal" - icon_state = "sergal" - hasinner= 1 - /datum/sprite_accessory/mam_tails/sergal name = "Sergal" icon_state = "sergal" @@ -848,10 +848,6 @@ datum/sprite_accessory/mam_tails/insect name = "Sergal" icon_state = "sergal" -/datum/sprite_accessory/mam_ears/skunk - name = "skunk" - icon_state = "skunk" - /datum/sprite_accessory/mam_tails/skunk name = "skunk" icon_state = "skunk" @@ -886,11 +882,6 @@ datum/sprite_accessory/mam_tails/insect extra = TRUE extra2 = TRUE -/datum/sprite_accessory/mam_ears/squirrel - name = "Squirrel" - icon_state = "squirrel" - hasinner= 1 - /datum/sprite_accessory/mam_tails/squirrel name = "Squirrel" icon_state = "squirrel" @@ -907,11 +898,6 @@ datum/sprite_accessory/mam_tails/tentacle name = "Tentacle" icon_state = "tentacle" -/datum/sprite_accessory/mam_ears/wolf - name = "Wolf" - icon_state = "wolf" - hasinner = 1 - /datum/sprite_accessory/mam_tails/wolf name = "Wolf" icon_state = "wolf" @@ -1082,6 +1068,7 @@ datum/sprite_accessory/mam_tails/tentacle extra2 = TRUE center = TRUE dimension_x = 64 + var/taur_mode = NOT_TAURIC /datum/sprite_accessory/taur/none name = "None" @@ -1090,10 +1077,12 @@ datum/sprite_accessory/mam_tails/tentacle /datum/sprite_accessory/taur/cow name = "Cow" icon_state = "cow" + taur_mode = HOOF_TAURIC /datum/sprite_accessory/taur/drake name = "Drake" icon_state = "drake" + taur_mode = PAW_TAURIC /datum/sprite_accessory/taur/drider name = "Drider" @@ -1102,59 +1091,67 @@ datum/sprite_accessory/mam_tails/tentacle /datum/sprite_accessory/taur/eevee name = "Eevee" icon_state = "eevee" + taur_mode = PAW_TAURIC /datum/sprite_accessory/taur/fox name = "Fox" icon_state = "fox" + taur_mode = PAW_TAURIC /datum/sprite_accessory/taur/husky name = "Husky" icon_state = "husky" + taur_mode = PAW_TAURIC /datum/sprite_accessory/taur/horse name = "Horse" icon_state = "horse" + taur_mode = HOOF_TAURIC /datum/sprite_accessory/taur/lab name = "Lab" icon_state = "lab" + taur_mode = PAW_TAURIC /datum/sprite_accessory/taur/naga name = "Naga" icon_state = "naga" - -/datum/sprite_accessory/taur/tentacle - name = "Tentacle" - icon_state = "tentacle" + taur_mode = SNEK_TAURIC /datum/sprite_accessory/taur/otie name = "Otie" icon_state = "otie" + taur_mode = PAW_TAURIC /datum/sprite_accessory/taur/pede name = "Scolipede" icon_state = "pede" - extra = TRUE - extra2 = TRUE - color_src = MUTCOLORS - extra_color_src = MUTCOLORS2 - extra2_color_src = MUTCOLORS3 + taur_mode = PAW_TAURIC /datum/sprite_accessory/taur/panther name = "Panther" icon_state = "panther" + taur_mode = PAW_TAURIC /datum/sprite_accessory/taur/shepherd name = "Shepherd" icon_state = "shepherd" + taur_mode = PAW_TAURIC /datum/sprite_accessory/taur/tajaran name = "Tajaran" icon_state = "tajaran" + taur_mode = PAW_TAURIC + +/datum/sprite_accessory/taur/tentacle + name = "Tentacle" + icon_state = "tentacle" + taur_mode = SNEK_TAURIC /datum/sprite_accessory/taur/wolf name = "Wolf" icon_state = "wolf" + taur_mode = PAW_TAURIC /****************************************** *************** Ayyliums ****************** @@ -1362,24 +1359,25 @@ datum/sprite_accessory/mam_tails/tentacle // *** Snooooow flaaaaake *** -/datum/sprite_accessory/mam_body_markings/guilmon +/datum/sprite_accessory/body_markings/guilmon name = "Guilmon" icon_state = "guilmon" gender_specific = 1 -/datum/sprite_accessory/mam_tails/guilmon +/datum/sprite_accessory/tails/lizard/guilmon name = "Guilmon" icon_state = "guilmon" extra = TRUE -/datum/sprite_accessory/mam_tails_animated/guilmon +/datum/sprite_accessory/tails_animated/lizard/guilmon name = "Guilmon" icon_state = "guilmon" extra = TRUE -/datum/sprite_accessory/mam_ears/guilmon +/datum/sprite_accessory/horns/guilmon name = "Guilmon" icon_state = "guilmon" + icon = 'modular_citadel/icons/mob/mam_ears.dmi' /datum/sprite_accessory/snout/guilmon name = "Guilmon" diff --git a/modular_citadel/code/modules/mob/living/carbon/human/species.dm b/modular_citadel/code/modules/mob/living/carbon/human/species.dm index 0211975526..9ed84c1401 100644 --- a/modular_citadel/code/modules/mob/living/carbon/human/species.dm +++ b/modular_citadel/code/modules/mob/living/carbon/human/species.dm @@ -37,24 +37,22 @@ var/randomized_zone = ran_zone(user.zone_selected) SEND_SIGNAL(target, COMSIG_HUMAN_DISARM_HIT, user, user.zone_selected) var/obj/item/bodypart/affecting = target.get_bodypart(randomized_zone) - var/randn = rand(1, 100) - if(user.resting) - randn += 20 //Makes it plausible, but unlikely, to push someone over while resting - if(!user.combatmode) - randn += 25 //Makes it impossible to push actually push someone outside of combat mode - if(randn <= 25) + if(!target.combatmode && user.combatmode || prob(target.getStaminaLoss()*(user.resting ? 0.25 : 1)*(user.combatmode ? 1 : 0.05))) //probability depends on staminaloss. it's plausible, but unlikely that you'll be able to push someone over while resting, and pretty rare to successfully push someone outside of combat mode. The few people that even know how to right-click outside of combat mode are a rarity but let's take that into account regardless. playsound(target, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - target.visible_message("[user] has pushed [target]!", + target.visible_message("[user] [user.combatmode ? "has" : "gently"] pushed [target]!", "[user] has pushed [target]!", null, COMBAT_MESSAGE_RANGE) target.apply_effect(40, EFFECT_KNOCKDOWN, target.run_armor_check(affecting, "melee", "Your armor prevents your fall!", "Your armor softens your fall!")) target.forcesay(GLOB.hit_appends) log_combat(user, target, "disarmed", " pushing them to the ground") return - playsound(target, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - target.visible_message("[user] attempted to push [target]!", \ - "[user] attemped to push [target]!", null, COMBAT_MESSAGE_RANGE) + playsound(target, 'sound/weapons/thudswoosh.ogg', 25, 1, -1) + target.visible_message("[user] [user.combatmode ? "attempted to push" : "tries to gently push"] [target] over!", \ + "[user] [user.combatmode ? "attempted to push" : "tries to gently push"] [target] over!", null, COMBAT_MESSAGE_RANGE) + if(!target.resting && !user.resting && user.combatmode) + target.adjustStaminaLoss(rand(1,5)) //This is the absolute most inefficient way to get someone into soft stamcrit, but if you've got a crowd trying to shove you over, you've no option but to get knocked down and accept fate + log_combat(user, target, "attempted to disarm push") //////////////////// /////BODYPARTS///// diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm index 6fe3994d20..0ac3d624e9 100644 --- a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm +++ b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm @@ -3,31 +3,31 @@ DOG BORG EQUIPMENT HERE SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! */ +/obj/item/dogborg/jaws + name = "Dogborg jaws" + desc = "The jaws of the debug errors oh god." + icon = 'icons/mob/dogborg.dmi' + flags_1 = CONDUCT_1 + force = 1 + throwforce = 0 + w_class = 3 + hitsound = 'sound/weapons/bite.ogg' + sharpness = IS_SHARP + /obj/item/dogborg/jaws/big name = "combat jaws" - icon = 'icons/mob/dogborg.dmi' + desc = "The jaws of the law. Very sharp." icon_state = "jaws" - desc = "The jaws of the law." - flags_1 = CONDUCT_1 force = 12 - throwforce = 0 - hitsound = 'sound/weapons/bite.ogg' attack_verb = list("chomped", "bit", "ripped", "mauled", "enforced") - w_class = 3 - sharpness = IS_SHARP /obj/item/dogborg/jaws/small name = "puppy jaws" - icon = 'icons/mob/dogborg.dmi' + desc = "Rubberized teeth designed to protect accidental harm. Sharp enough for specialized tasks however." icon_state = "smalljaws" - desc = "The jaws of a small dog." - flags_1 = CONDUCT_1 force = 6 - throwforce = 0 - hitsound = 'sound/weapons/bite.ogg' attack_verb = list("nibbled", "bit", "gnawed", "chomped", "nommed") - w_class = 3 - sharpness = IS_SHARP + var/status = 0 /obj/item/dogborg/jaws/attack(atom/A, mob/living/silicon/robot/user) ..() @@ -36,50 +36,25 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! /obj/item/dogborg/jaws/small/attack_self(mob/user) var/mob/living/silicon/robot.R = user - if(R.emagged) - name = "combat jaws" - icon = 'icons/mob/dogborg.dmi' - icon_state = "jaws" - desc = "The jaws of the law." - flags_1 = CONDUCT_1 - force = 12 - throwforce = 0 - hitsound = 'sound/weapons/bite.ogg' - attack_verb = list("chomped", "bit", "ripped", "mauled", "enforced") - w_class = 3 - sharpness = IS_SHARP - else - name = "puppy jaws" - icon = 'icons/mob/dogborg.dmi' - icon_state = "smalljaws" - desc = "The jaws of a small dog." - flags_1 = CONDUCT_1 - force = 5 - throwforce = 0 - hitsound = 'sound/weapons/bite.ogg' - attack_verb = list("nibbled", "bit", "gnawed", "chomped", "nommed") - w_class = 3 - sharpness = IS_SHARP - update_icon() - - -//Cuffs - -/obj/item/restraints/handcuffs/cable/zipties/cyborg/dog/attack(mob/living/carbon/C, mob/user) - if(!C.handcuffed) - playsound(loc, 'sound/weapons/cablecuff.ogg', 60, 1, -2) - C.visible_message("[user] is trying to put zipties on [C]!", \ - "[user] is trying to put zipties on [C]!") - if(do_mob(user, C, 60)) - if(!C.handcuffed) - C.handcuffed = new /obj/item/restraints/handcuffs/cable/zipties/used(C) - C.update_inv_handcuffed(0) - to_chat(user,"You handcuff [C].") - playsound(loc, pick('sound/voice/beepsky/criminal.ogg', 'sound/voice/beepsky/justice.ogg', 'sound/voice/beepsky/freeze.ogg'), 50, FALSE) - log_combat(user, C, "handcuffed") + if(R.cell && R.cell.charge > 100) + if(R.emagged && status == 0) + name = "combat jaws" + icon_state = "jaws" + desc = "The jaws of the law." + force = 12 + attack_verb = list("chomped", "bit", "ripped", "mauled", "enforced") + status = 1 + to_chat(user, "Your jaws are now [status ? "Combat" : "Pup'd"].") else - to_chat(user,"You fail to handcuff [C]!") - + name = "puppy jaws" + icon_state = "smalljaws" + desc = "The jaws of a small dog." + force = 5 + attack_verb = list("nibbled", "bit", "gnawed", "chomped", "nommed") + status = 0 + if(R.emagged) + to_chat(user, "Your jaws are now [status ? "Combat" : "Pup'd"].") + update_icon() //Boop @@ -152,8 +127,10 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! /obj/item/analyzer/nose/AltClick(mob/user) //Barometer output for measuring when the next storm happens . = ..() -/obj/item/analyzer/nose/afterattack(atom/target, mob/user) +/obj/item/analyzer/nose/afterattack(atom/target, mob/user, proximity) . = ..() + if(!proximity) + return do_attack_animation(target, null, src) user.visible_message("[user] [pick(attack_verb)] \the [target.name] with their nose!") @@ -172,8 +149,8 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! STR.max_combined_w_class = 5 STR.max_items = 1 STR.cant_hold = typecacheof(list(/obj/item/disk/nuclear, /obj/item/radio/intercom)) -//Tongue stuff +//Tongue stuff /obj/item/soap/tongue name = "synthetic tongue" desc = "Useful for slurping mess off the floor before affectionally licking the crew members in the face." @@ -190,12 +167,6 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! ..() item_flags |= NOBLUDGEON //No more attack messages -/obj/item/trash/rkibble - name = "robo kibble" - desc = "A novelty bowl of assorted mech fabricator byproducts. Mockingly feed this to the sec-dog to help it recharge." - icon = 'icons/mob/dogborg.dmi' - icon_state= "kibble" - /obj/item/soap/tongue/attack_self(mob/user) var/mob/living/silicon/robot.R = user if(R.cell && R.cell.charge > 100) @@ -303,6 +274,13 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! target.wash_cream() return +//Dogfood + +/obj/item/trash/rkibble + name = "robo kibble" + desc = "A novelty bowl of assorted mech fabricator byproducts. Mockingly feed this to the sec-dog to help it recharge." + icon = 'icons/mob/dogborg.dmi' + icon_state= "kibble" //Defibs diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/robot_modules.dm b/modular_citadel/code/modules/mob/living/silicon/robot/robot_modules.dm index ebb418b3e2..0efe493c35 100644 --- a/modular_citadel/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/modular_citadel/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -30,7 +30,7 @@ /obj/item/robot_module/k9 name = "Security K-9 Unit" basic_modules = list( - /obj/item/restraints/handcuffs/cable/zipties/cyborg/dog, + /obj/item/restraints/handcuffs/cable/zipties, /obj/item/storage/bag/borgdelivery, /obj/item/dogborg/jaws/big, /obj/item/dogborg/pounce, @@ -69,6 +69,7 @@ /obj/item/extinguisher/mini, /obj/item/healthanalyzer, /obj/item/dogborg/sleeper/medihound, + /obj/item/roller/robo, /obj/item/reagent_containers/borghypo, /obj/item/twohanded/shockpaddles/cyborg/hound, /obj/item/stack/medical/gauze/cyborg, diff --git a/modular_citadel/code/modules/projectiles/ammunition/ballistic/smg/smg.dm b/modular_citadel/code/modules/projectiles/ammunition/ballistic/smg/smg.dm index 7a2f69de5a..d17367b922 100644 --- a/modular_citadel/code/modules/projectiles/ammunition/ballistic/smg/smg.dm +++ b/modular_citadel/code/modules/projectiles/ammunition/ballistic/smg/smg.dm @@ -2,4 +2,4 @@ /obj/item/ammo_casing/c46x30mm/tx name = "Toxin Tipped 4.6x30mm bullet casing." desc = "A Toxin Tipped 4.6x30mm bullet casing." - projectile_type = /obj/item/projectile/bullet/c46x30mm + projectile_type = /obj/item/projectile/bullet/c46x30mm_tx diff --git a/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm b/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm index 2ae5308835..1aa8122be5 100644 --- a/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm +++ b/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm @@ -48,6 +48,8 @@ var/tmp/list/items_preserved = list() // Stuff that wont digest so we shouldn't process it again. var/tmp/next_emote = 0 // When we're supposed to print our next emote, as a belly controller tick # var/tmp/recent_sound = FALSE // Prevent audio spam + var/tmp/last_hearcheck = 0 + var/tmp/list/hearing_mobs // Don't forget to watch your commas at the end of each line if you change these. var/list/struggle_messages_outside = list( @@ -167,7 +169,7 @@ //Sound w/ antispam flag setting if(!silent && !recent_sound) for(var/mob/M in get_hearers_in_view(5, get_turf(owner))) - if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) + if(M.client && (M.client.prefs.cit_toggles & EATING_NOISES)) playsound(get_turf(owner),"[src.vore_sound]",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) recent_sound = TRUE @@ -200,7 +202,7 @@ AM.forceMove(destination) // Move the belly contents into the same location as belly's owner. count++ for(var/mob/M in get_hearers_in_view(5, get_turf(owner))) - if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) + if(M.client && (M.client.prefs.cit_toggles & EATING_NOISES)) playsound(get_turf(owner),"[src.release_sound]",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) if(!silent) owner.visible_message("[owner] expels everything from their [lowertext(name)]!") @@ -220,7 +222,7 @@ items_preserved -= M if(release_sound) for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.cit_toggles & EATING_NOISES) + if(H.client && (H.client.prefs.cit_toggles & EATING_NOISES)) playsound(get_turf(owner),"[src.release_sound]",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) if(istype(M,/mob/living)) @@ -296,7 +298,7 @@ target.nom_mob(content, target.owner) if(!silent) for(var/mob/M in get_hearers_in_view(5, get_turf(owner))) - if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) + if(M.client && (M.client.prefs.cit_toggles & EATING_NOISES)) playsound(get_turf(owner),"[src.vore_sound]",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) owner.updateVRPanel() for(var/mob/living/M in contents) @@ -510,7 +512,7 @@ if(!silent) for(var/mob/M in get_hearers_in_view(5, get_turf(owner))) - if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) + if(M.client && (M.client.prefs.cit_toggles & EATING_NOISES)) playsound(get_turf(owner),"struggle_sound",35,0,-5,1,ignore_walls = FALSE,channel=CHANNEL_PRED) R.stop_sound_channel(CHANNEL_PRED) var/sound/prey_struggle = sound(get_sfx("prey_struggle")) diff --git a/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm b/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm index 8b8781cb02..6c528f75a9 100644 --- a/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm +++ b/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm @@ -45,6 +45,9 @@ ////////////////////////// Sound vars ///////////////////////////// var/sound/prey_digest = sound(get_sfx("digest_prey")) var/sound/prey_death = sound(get_sfx("death_prey")) + var/sound/pred_digest = sound(get_sfx("digest_pred")) + var/sound/pred_death = sound(get_sfx("death_pred")) + var/turf/source = get_turf(owner) ///////////////////////////// DM_HOLD ///////////////////////////// @@ -55,12 +58,18 @@ else if(digest_mode == DM_DIGEST) for (var/mob/living/M in contents) if(prob(25)) - M.stop_sound_channel(CHANNEL_DIGEST) - for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) - playsound(get_turf(owner),"digest_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) - M.stop_sound_channel(CHANNEL_DIGEST) - M.playsound_local(get_turf(M), prey_digest, 45) + if((world.time - NORMIE_HEARCHECK) > last_hearcheck) + LAZYCLEARLIST(hearing_mobs) + for(var/mob/H in get_hearers_in_view(3, source)) + if(!H.client || !(H.client.prefs.cit_toggles & DIGESTION_NOISES)) + continue + LAZYADD(hearing_mobs, H) + last_hearcheck = world.time + for(var/mob/H in hearing_mobs) + if(!isbelly(H.loc)) + H.playsound_local(source, null, 45, falloff = 0, S = pred_digest) + else if(H in contents) + H.playsound_local(source, null, 65, falloff = 0, S = prey_digest) //Pref protection! if (!M.digestable || M.absorbed) @@ -86,13 +95,19 @@ M.visible_message("You watch as [owner]'s form loses its additions.") owner.nutrition += 400 // so eating dead mobs gives you *something*. - M.stop_sound_channel(DIGESTION_NOISES) - for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) - playsound(get_turf(owner),"death_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) - M.stop_sound_channel(DIGESTION_NOISES) + if((world.time - NORMIE_HEARCHECK) > last_hearcheck) + LAZYCLEARLIST(hearing_mobs) + for(var/mob/H in get_hearers_in_view(3, source)) + if(!H.client || !(H.client.prefs.cit_toggles & DIGESTION_NOISES)) + continue + LAZYADD(hearing_mobs, H) + last_hearcheck = world.time + for(var/mob/H in hearing_mobs) + if(!isbelly(H.loc)) + H.playsound_local(source, null, 45, falloff = 0, S = pred_death) + else if(H in contents) + H.playsound_local(source, null, 65, falloff = 0, S = prey_death) M.stop_sound_channel(CHANNEL_PREYLOOP) - M.playsound_local(get_turf(M), prey_death, 65) digestion_death(M) owner.update_icons() continue @@ -115,12 +130,18 @@ if(digest_mode == DM_HEAL) for (var/mob/living/M in contents) if(prob(25)) - M.stop_sound_channel(CHANNEL_DIGEST) - for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) - playsound(get_turf(owner),"digest_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) - M.stop_sound_channel(CHANNEL_DIGEST) - M.playsound_local(get_turf(M), prey_digest, 65) + if((world.time - NORMIE_HEARCHECK) > last_hearcheck) + LAZYCLEARLIST(hearing_mobs) + for(var/mob/H in get_hearers_in_view(3, source)) + if(!H.client || !(H.client.prefs.cit_toggles & DIGESTION_NOISES)) + continue + LAZYADD(hearing_mobs, H) + last_hearcheck = world.time + for(var/mob/H in hearing_mobs) + if(!isbelly(H.loc)) + H.playsound_local(source, null, 45, falloff = 0, S = pred_digest) + else if(H in contents) + H.playsound_local(source, null, 65, falloff = 0, S = prey_digest) if(M.stat != DEAD) if(owner.nutrition >= NUTRITION_LEVEL_STARVING && (M.health < M.maxHealth)) @@ -132,14 +153,19 @@ ////////////////////////// DM_NOISY ///////////////////////////////// //for when you just want people to squelch around if(digest_mode == DM_NOISY) - for (var/mob/living/M in contents) - if(prob(35)) - M.stop_sound_channel(CHANNEL_DIGEST) - for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) - playsound(get_turf(owner),"digest_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) - M.stop_sound_channel(CHANNEL_PRED) - M.playsound_local(get_turf(M), prey_digest, 65) + if(prob(35)) + if((world.time - NORMIE_HEARCHECK) > last_hearcheck) + LAZYCLEARLIST(hearing_mobs) + for(var/mob/H in get_hearers_in_view(3, source)) + if(!H.client || !(H.client.prefs.cit_toggles & DIGESTION_NOISES)) + continue + LAZYADD(hearing_mobs, H) + last_hearcheck = world.time + for(var/mob/H in hearing_mobs) + if(!isbelly(H.loc)) + H.playsound_local(source, null, 45, falloff = 0, S = pred_digest) + else if(H in contents) + H.playsound_local(source, null, 65, falloff = 0, S = prey_digest) //////////////////////////// DM_ABSORB //////////////////////////// @@ -147,13 +173,19 @@ for (var/mob/living/M in contents) - if(prob(10)) //Less often than gurgles. People might leave this on forever. - M.stop_sound_channel(CHANNEL_DIGEST) - for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.toggles & DIGESTION_NOISES) - playsound(get_turf(owner),"digest_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) - M.stop_sound_channel(CHANNEL_PRED) - M.playsound_local(get_turf(M), prey_digest, 65) + if(prob(10))//Less often than gurgles. People might leave this on forever. + if((world.time - NORMIE_HEARCHECK) > last_hearcheck) + LAZYCLEARLIST(hearing_mobs) + for(var/mob/H in get_hearers_in_view(3, source)) + if(!H.client || !(H.client.prefs.cit_toggles & DIGESTION_NOISES)) + continue + LAZYADD(hearing_mobs, H) + last_hearcheck = world.time + for(var/mob/H in hearing_mobs) + if(!isbelly(H.loc)) + H.playsound_local(source, null, 45, falloff = 0, S = pred_digest) + else if(H in contents) + H.playsound_local(source, null, 65, falloff = 0, S = prey_digest) if(M.absorbed) continue @@ -180,12 +212,18 @@ if(digest_mode == DM_DRAGON) for (var/mob/living/M in contents) if(prob(55)) //if you're hearing this, you're a vore ho anyway. - M.stop_sound_channel(CHANNEL_DIGEST) - for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) - playsound(get_turf(owner),"digest_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) - M.stop_sound_channel(CHANNEL_DIGEST) - M.playsound_local(get_turf(M), prey_digest, 65) + if((world.time - NORMIE_HEARCHECK) > last_hearcheck) + LAZYCLEARLIST(hearing_mobs) + for(var/mob/H in get_hearers_in_view(3, source)) + if(!H.client || !(H.client.prefs.cit_toggles & DIGESTION_NOISES)) + continue + LAZYADD(hearing_mobs, H) + last_hearcheck = world.time + for(var/mob/H in hearing_mobs) + if(!isbelly(H.loc)) + H.playsound_local(source, null, 45, falloff = 0, S = pred_digest) + else if(H in contents) + H.playsound_local(source, null, 65, falloff = 0, S = prey_digest) //No digestion protection for megafauna. @@ -207,13 +245,18 @@ to_chat(owner, "[digest_alert_owner]") to_chat(M, "[digest_alert_prey]") M.visible_message("You watch as [owner]'s guts loudly rumble as it finishes off a meal.") - - M.stop_sound_channel(CHANNEL_DIGEST) - for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) - playsound(get_turf(owner),"death_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) - M.stop_sound_channel(CHANNEL_DIGEST) - M.playsound_local(get_turf(M), prey_death, 65) + if((world.time - NORMIE_HEARCHECK) > last_hearcheck) + LAZYCLEARLIST(hearing_mobs) + for(var/mob/H in get_hearers_in_view(3, source)) + if(!H.client || !(H.client.prefs.cit_toggles & DIGESTION_NOISES)) + continue + LAZYADD(hearing_mobs, H) + last_hearcheck = world.time + for(var/mob/H in hearing_mobs) + if(!isbelly(H.loc)) + H.playsound_local(source, null, 45, falloff = 0, S = pred_death) + else if(H in contents) + H.playsound_local(source, null, 65, falloff = 0, S = prey_death) M.spill_organs(FALSE,TRUE,TRUE) M.stop_sound_channel(CHANNEL_PREYLOOP) digestion_death(M) diff --git a/modular_citadel/icons/mob/digishoes.dmi b/modular_citadel/icons/mob/digishoes.dmi index 49988f88f6..a499db6262 100644 Binary files a/modular_citadel/icons/mob/digishoes.dmi and b/modular_citadel/icons/mob/digishoes.dmi differ diff --git a/modular_citadel/icons/mob/mam_bodyparts.dmi b/modular_citadel/icons/mob/mam_bodyparts.dmi deleted file mode 100644 index de8da877f9..0000000000 Binary files a/modular_citadel/icons/mob/mam_bodyparts.dmi and /dev/null differ diff --git a/modular_citadel/icons/mob/mam_ears.dmi b/modular_citadel/icons/mob/mam_ears.dmi new file mode 100644 index 0000000000..51ffd28bbc Binary files /dev/null and b/modular_citadel/icons/mob/mam_ears.dmi differ diff --git a/modular_citadel/icons/mob/mam_snouts.dmi b/modular_citadel/icons/mob/mam_snouts.dmi new file mode 100644 index 0000000000..98b62f929d Binary files /dev/null and b/modular_citadel/icons/mob/mam_snouts.dmi differ diff --git a/modular_citadel/icons/mob/mam_tails.dmi b/modular_citadel/icons/mob/mam_tails.dmi new file mode 100644 index 0000000000..7627b71b35 Binary files /dev/null and b/modular_citadel/icons/mob/mam_tails.dmi differ diff --git a/modular_citadel/icons/mob/suit_digi.dmi b/modular_citadel/icons/mob/suit_digi.dmi new file mode 100644 index 0000000000..89284dbe52 Binary files /dev/null and b/modular_citadel/icons/mob/suit_digi.dmi differ diff --git a/modular_citadel/icons/mob/taur_canine.dmi b/modular_citadel/icons/mob/taur_canine.dmi new file mode 100644 index 0000000000..101430f0e2 Binary files /dev/null and b/modular_citadel/icons/mob/taur_canine.dmi differ diff --git a/modular_citadel/icons/mob/taur_hooved.dmi b/modular_citadel/icons/mob/taur_hooved.dmi new file mode 100644 index 0000000000..e9860f2014 Binary files /dev/null and b/modular_citadel/icons/mob/taur_hooved.dmi differ diff --git a/modular_citadel/icons/mob/taur_naga.dmi b/modular_citadel/icons/mob/taur_naga.dmi new file mode 100644 index 0000000000..7342b52cdb Binary files /dev/null and b/modular_citadel/icons/mob/taur_naga.dmi differ diff --git a/strings/phobia.json b/strings/phobia.json index 3be9794bf9..3f56751333 100644 --- a/strings/phobia.json +++ b/strings/phobia.json @@ -268,5 +268,33 @@ "let go", "i'll catch you", "slip" + ], + +"anime": [ + "anime", + "manga", + "baka", + "desu", + "sugoi", + "katana", + "weeb", + "otaku", + "catgirl", + "catgirls", + "ninja", + "uguu", + "waifu", + "husbando", + "best girl", + "worst girl", + "subs", + "dubs", + "season two when", + "cosplay", + "nya", + "nyaa", + "neet", + "ora", + "~" ] -} +} \ No newline at end of file diff --git a/strings/tips.txt b/strings/tips.txt index 079bb50938..d389437158 100644 --- a/strings/tips.txt +++ b/strings/tips.txt @@ -29,7 +29,7 @@ As a Medical Doctor, you can attempt to drain blood from a husk with a syringe t As a Medical Doctor, while both heal toxin damage, the difference between charcoal and antitoxin is that charcoal will actively remove all other reagents from one's body, while antitoxin only removes various toxins - but can overdose. As a Medical Doctor, you can surgically implant or extract things from people's chests. This can range from putting in a bomb to pulling out an alien larva. As a Medical Doctor, you must target the correct limb and be on help intent when trying to perform surgery on someone. Using disarm attempt will intentionally fail the surgery step. -As a Medical Doctor, corpses with the "...and their soul has departed" description no longer have a ghost attached to them and aren't revivable or clonable. +As a Medical Doctor, corpses with the "...and their soul has departed" description no longer have a ghost attached to them and aren't usually revivable or cloneable. However it may prove useful to be creative in your revivification techniques with these bodies. As a Medical Doctor, treating plasmamen is not impossible! Salbutamol stops them from suffocating and showers stop them from burning alive. You can even perform surgery on them by doing the procedure on a roller bed under a shower. As a Medical Doctor, you can point your penlight at people to create a medical hologram. This lets them know that you're coming to treat them. As a Medical Doctor, you can extract implants by holding an empty implant case in your offhand while performing the extraction step. @@ -230,4 +230,4 @@ You can swap floor tiles by holding a crowbar in one hand and a stack of tiles i When hacking doors, cutting and mending the "test light wire" will restore power to the door. When crafting most items, you can either manually combine parts or use the crafting menu. Suit storage units not only remove blood and dirt from clothing, but also radiation! -Remote devices will work when used through cameras. For example: Bluespace RPEDs and door remotes. \ No newline at end of file +Remote devices will work when used through cameras. For example: Bluespace RPEDs and door remotes. diff --git a/tools/mapmerge2/dmm.py b/tools/mapmerge2/dmm.py index 421ffb4cd1..8bb1dca353 100644 --- a/tools/mapmerge2/dmm.py +++ b/tools/mapmerge2/dmm.py @@ -370,7 +370,7 @@ def _parse(map_raw_text): continue elif in_comment_line: continue - elif char == "\t": + elif char in "\r\t": continue if char == "/" and not in_quote_block: @@ -478,6 +478,9 @@ def _parse(map_raw_text): # grid block for char in it: + if char == "\r": + continue + if in_coord_block: if char == ",": if reading_coord == "x":