From ea519b379c9833862db8268f1a23eace67cb0052 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 27 Dec 2020 12:45:07 -0700 Subject: [PATCH 01/96] Update reagents.dm --- code/modules/movespeed/modifiers/reagents.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/modules/movespeed/modifiers/reagents.dm b/code/modules/movespeed/modifiers/reagents.dm index b6c2458670..5010959598 100644 --- a/code/modules/movespeed/modifiers/reagents.dm +++ b/code/modules/movespeed/modifiers/reagents.dm @@ -12,3 +12,7 @@ /datum/movespeed_modifier/reagent/nitryl multiplicative_slowdown = -1 + +/datum/movespeed_modifier/reagent/meth + multiplicative_slowdown = -0.5 + absolute_max_tiles_per_second = 10 From 94b3f03b24854483dbbc8462cf0509805af73c5f Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 27 Dec 2020 12:45:57 -0700 Subject: [PATCH 02/96] Update drug_reagents.dm --- code/modules/reagents/chemistry/reagents/drug_reagents.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index 44b6e85f47..eaccbe44f6 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -173,10 +173,12 @@ ..() L.ignore_slowdown(type) ADD_TRAIT(L, TRAIT_TASED_RESISTANCE, type) + L.add_movespeed_modifier(/datum/movespeed_modifier/reagent/meth) /datum/reagent/drug/methamphetamine/on_mob_end_metabolize(mob/living/L) L.unignore_slowdown(type) REMOVE_TRAIT(L, TRAIT_TASED_RESISTANCE, type) + L.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/meth) ..() /datum/reagent/drug/methamphetamine/on_mob_life(mob/living/carbon/M) From c4de8178706a48535cf7965bf7785d4ad3ca021d Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 27 Dec 2020 12:48:02 -0700 Subject: [PATCH 03/96] Update drink_reagents.dm --- .../modules/reagents/chemistry/reagents/drink_reagents.dm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/code/modules/reagents/chemistry/reagents/drink_reagents.dm b/code/modules/reagents/chemistry/reagents/drink_reagents.dm index 37fc075c6f..32e8339063 100644 --- a/code/modules/reagents/chemistry/reagents/drink_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drink_reagents.dm @@ -504,6 +504,14 @@ glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland." value = REAGENT_VALUE_COMMON +/datum/reagent/consumable/nuka_cola/on_mob_metabolize(mob/living/carbon/M) + M.add_movespeed_modifier(/datum/movespeed_modifier/reagent/meth) + return ..() + +/datum/reagent/consumable/nuka_cola/on_mob_end_metabolize(mob/living/carbon/M) + M.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/meth) + return ..() + /datum/reagent/consumable/nuka_cola/on_mob_life(mob/living/carbon/M) M.Jitter(20) M.set_drugginess(30) From 005f7e2d6dad2a14c67a720aaebd7760b008b0a7 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 27 Dec 2020 12:52:52 -0700 Subject: [PATCH 04/96] Update reagents.dm --- code/modules/movespeed/modifiers/reagents.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/movespeed/modifiers/reagents.dm b/code/modules/movespeed/modifiers/reagents.dm index 5010959598..1a03e8a602 100644 --- a/code/modules/movespeed/modifiers/reagents.dm +++ b/code/modules/movespeed/modifiers/reagents.dm @@ -15,4 +15,4 @@ /datum/movespeed_modifier/reagent/meth multiplicative_slowdown = -0.5 - absolute_max_tiles_per_second = 10 + absolute_max_tiles_per_second = 11 From 699d8e1e88e223684bb50a83ae2882d5ec3b2f34 Mon Sep 17 00:00:00 2001 From: Putnam Date: Mon, 11 Jan 2021 21:06:47 -0800 Subject: [PATCH 05/96] Fixes fermichem EMPs being massive. --- .../code/modules/reagents/chemistry/recipes/fermi.dm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm b/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm index 21f525088c..18c52171f4 100644 --- a/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm +++ b/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm @@ -93,9 +93,8 @@ e.set_up(round((volume/28)*(pH-9)), T, 0, 0) e.start() - if(!ImpureTot == 0) //If impure, v.small emp (0.6 or less) - ImpureTot *= volume - empulse(T, volume, 1) + if(ImpureTot) //If impure, v.small emp (0.6 or less) + empulse(T, impureTot, 1) my_atom.reagents.clear_reagents() //just in case return From 608465f1ed250a34b72a401843861b2fd4efdb0d Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Thu, 14 Jan 2021 17:14:09 -0700 Subject: [PATCH 06/96] Update toxin_reagents.dm --- code/modules/reagents/chemistry/reagents/toxin_reagents.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm index 0d0a234afc..769f876ef5 100644 --- a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm @@ -783,6 +783,8 @@ value = REAGENT_VALUE_VERY_RARE /datum/reagent/toxin/rotatium/on_mob_life(mob/living/carbon/M) + return // until fixed - the rotations never stop +/* if(M.hud_used) if(current_cycle >= 20 && current_cycle%20 == 0) var/list/screens = list(M.hud_used.plane_masters["[FLOOR_PLANE]"], M.hud_used.plane_masters["[GAME_PLANE]"], @@ -800,6 +802,7 @@ for(var/whole_screen in screens) animate(whole_screen, transform = matrix(), time = 5, easing = QUAD_EASING) ..() +*/ /datum/reagent/toxin/skewium name = "Skewium" From 1f1605bbb631384fccd8510c2f22e5779320ecd8 Mon Sep 17 00:00:00 2001 From: TripleShades Date: Fri, 15 Jan 2021 16:54:24 -0800 Subject: [PATCH 07/96] Update BoxStation.dmm --- _maps/map_files/BoxStation/BoxStation.dmm | 395 ++++++++++++++-------- 1 file changed, 254 insertions(+), 141 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index b81f55be21..741f6eb071 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -12995,13 +12995,27 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/obj/machinery/camera{ + c_tag = "Chapel North" + }, +/obj/structure/table/wood, +/obj/item/reagent_containers/food/snacks/grown/poppy, +/obj/item/reagent_containers/food/snacks/grown/harebell, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aCP" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/turf/open/floor/plasteel/dark, +/obj/structure/table/wood, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aCQ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13010,7 +13024,7 @@ /obj/machinery/light/small{ dir = 1 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aCR" = ( /turf/closed/wall, @@ -13536,7 +13550,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aEi" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -13556,7 +13570,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aEl" = ( /obj/effect/landmark/event_spawn, @@ -13987,7 +14001,7 @@ name = "Mass Driver Controller"; pixel_x = 24 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aFB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -14617,7 +14631,7 @@ departmentType = 2; pixel_y = 30 }, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aGV" = ( /obj/structure/disposalpipe/segment{ @@ -14652,7 +14666,7 @@ /obj/machinery/airalarm{ pixel_y = 25 }, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aGZ" = ( /obj/machinery/door/airlock/security{ @@ -14703,7 +14717,7 @@ pixel_y = 25 }, /obj/machinery/vending/wardrobe/chap_wardrobe, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aHg" = ( /obj/machinery/light_switch{ @@ -14712,7 +14726,7 @@ /obj/machinery/camera{ c_tag = "Chapel Office" }, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aHh" = ( /obj/structure/cable{ @@ -14746,7 +14760,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aHl" = ( /obj/structure/closet/crate/coffin, @@ -14760,22 +14774,25 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/obj/structure/chair/wood/normal{ + dir = 4 + }, +/turf/open/floor/carpet, /area/chapel/main) "aHn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/obj/structure/chair/wood/normal{ + dir = 4 + }, +/turf/open/floor/carpet, /area/chapel/main) "aHo" = ( /obj/structure/table/glass, -/obj/item/reagent_containers/food/snacks/grown/poppy, -/obj/item/reagent_containers/food/snacks/grown/harebell, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, +/obj/item/storage/book/bible, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aHq" = ( /obj/effect/spawner/structure/window/reinforced, @@ -15280,7 +15297,7 @@ "aIz" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aIB" = ( /obj/structure/bodycontainer/crematorium{ @@ -15293,8 +15310,8 @@ /area/chapel/office) "aIC" = ( /obj/effect/landmark/start/chaplain, -/obj/structure/chair, -/turf/open/floor/plasteel/grimy, +/obj/structure/chair/comfy/plywood, +/turf/open/floor/carpet, /area/chapel/office) "aID" = ( /obj/structure/closet/crate/coffin, @@ -15305,7 +15322,7 @@ /area/chapel/office) "aIE" = ( /obj/structure/table/glass, -/turf/open/floor/plasteel/chapel, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aIH" = ( /obj/structure/table, @@ -15328,7 +15345,7 @@ /area/construction/mining/aux_base) "aII" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aIJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15787,11 +15804,10 @@ pixel_y = 10 }, /obj/structure/disposalpipe/segment, -/obj/item/nullrod, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aJO" = ( /obj/structure/table, @@ -15826,23 +15842,30 @@ "aJT" = ( /obj/structure/table/wood, /obj/item/paper_bin{ - pixel_x = -2; pixel_y = 5 }, -/obj/item/storage/crayons, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/grimy, +/obj/item/pen/fountain{ + pixel_y = 7 + }, +/turf/open/floor/carpet, /area/chapel/office) "aJU" = ( /obj/structure/table/wood, -/obj/item/pen, -/obj/item/reagent_containers/food/drinks/bottle/holywater, +/obj/item/reagent_containers/food/drinks/bottle/holywater{ + pixel_x = 9; + pixel_y = 4 + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/grimy, +/obj/item/nullrod{ + pixel_x = -15; + pixel_y = 3 + }, +/turf/open/floor/carpet, /area/chapel/office) "aJV" = ( /obj/structure/closet/crate/coffin, @@ -15851,13 +15874,14 @@ name = "Coffin Storage"; req_access_txt = "22" }, +/obj/structure/window/reinforced, /turf/open/floor/plasteel/dark, /area/chapel/office) "aJW" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aJX" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15917,9 +15941,11 @@ /area/gateway) "aKe" = ( /obj/structure/table/glass, -/turf/open/floor/plasteel/chapel{ - dir = 4 +/obj/item/storage/box/matches{ + pixel_x = 4; + pixel_y = -8 }, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aKf" = ( /obj/structure/cable{ @@ -16248,7 +16274,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aLb" = ( /obj/structure/disposalpipe/segment{ @@ -16267,7 +16293,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aLd" = ( /obj/structure/table, @@ -16286,13 +16312,13 @@ /turf/open/floor/plasteel, /area/hydroponics) "aLe" = ( -/obj/structure/chair{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/grimy, +/obj/structure/chair/wood/normal{ + dir = 1 + }, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aLf" = ( /obj/machinery/airalarm{ @@ -16372,10 +16398,8 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aLr" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aLt" = ( /turf/open/floor/wood{ @@ -16813,16 +16837,12 @@ /turf/open/floor/plasteel, /area/hydroponics) "aML" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/obj/structure/bookcase, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aMM" = ( -/obj/machinery/camera{ - c_tag = "Chapel North" - }, -/turf/open/floor/plasteel/dark, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aMN" = ( /obj/machinery/chem_master/condimaster, @@ -16887,7 +16907,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aMX" = ( -/turf/open/floor/plasteel/grimy, +/turf/open/floor/wood/wood_large, /area/chapel/office) "aMY" = ( /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, @@ -17177,12 +17197,8 @@ /turf/open/floor/wood, /area/library) "aNW" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Chapel Office"; - req_access_txt = "22" - }, -/turf/open/floor/plasteel/dark, -/area/chapel/office) +/turf/open/floor/wood/wood_large, +/area/chapel/main) "aNX" = ( /obj/item/radio/intercom{ broadcasting = 1; @@ -17190,7 +17206,8 @@ name = "Confessional Intercom"; pixel_x = 25 }, -/obj/structure/chair, +/obj/structure/chair/comfy/plywood, +/obj/machinery/light/floor, /turf/open/floor/plasteel/dark, /area/chapel/main) "aNY" = ( @@ -18085,6 +18102,10 @@ /area/chapel/main) "aQw" = ( /obj/structure/table/wood, +/obj/item/trash/candle{ + pixel_x = -5; + pixel_y = 2 + }, /turf/open/floor/plasteel/dark, /area/chapel/main) "aQx" = ( @@ -18104,9 +18125,10 @@ name = "Confessional Intercom"; pixel_x = 25 }, -/obj/structure/chair{ +/obj/structure/chair/wood/normal{ dir = 1 }, +/obj/machinery/light/floor, /turf/open/floor/plasteel/dark, /area/chapel/main) "aQA" = ( @@ -19111,24 +19133,32 @@ /turf/open/floor/plasteel/dark, /area/chapel/main) "aTf" = ( -/obj/structure/chair/stool, +/obj/structure/chair/pew/right{ + dir = 1 + }, /turf/open/floor/plasteel/chapel, /area/chapel/main) "aTg" = ( -/obj/structure/chair/stool, +/obj/structure/chair/pew/left{ + dir = 1 + }, /turf/open/floor/plasteel/chapel{ dir = 8 }, /area/chapel/main) "aTh" = ( -/obj/structure/chair/stool, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/chair/pew/right{ + dir = 1 + }, /turf/open/floor/plasteel/chapel, /area/chapel/main) "aTi" = ( -/obj/structure/chair/stool, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/landmark/start/assistant, +/obj/structure/chair/pew/left{ + dir = 1 + }, /turf/open/floor/plasteel/chapel{ dir = 8 }, @@ -19659,28 +19689,36 @@ /turf/open/floor/plasteel/dark, /area/chapel/main) "aUH" = ( -/obj/structure/chair/stool, /obj/effect/landmark/start/assistant, +/obj/structure/chair/pew/right{ + dir = 1 + }, /turf/open/floor/plasteel/chapel{ dir = 4 }, /area/chapel/main) "aUI" = ( -/obj/structure/chair/stool, +/obj/structure/chair/pew/left{ + dir = 1 + }, /turf/open/floor/plasteel/chapel{ dir = 1 }, /area/chapel/main) "aUJ" = ( -/obj/structure/chair/stool, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/chair/pew/right{ + dir = 1 + }, /turf/open/floor/plasteel/chapel{ dir = 4 }, /area/chapel/main) "aUK" = ( -/obj/structure/chair/stool, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/chair/pew/left{ + dir = 1 + }, /turf/open/floor/plasteel/chapel{ dir = 1 }, @@ -20207,8 +20245,10 @@ /turf/open/floor/wood, /area/library) "aVU" = ( -/obj/structure/chair/stool, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/chair/pew/left{ + dir = 1 + }, /turf/open/floor/plasteel/chapel{ dir = 8 }, @@ -46267,7 +46307,7 @@ "chY" = ( /obj/machinery/shieldgen, /turf/open/floor/plating, -/area/engine/storage) +/area/engine/engineering) "cia" = ( /obj/effect/turf_decal/bot{ dir = 1 @@ -46617,7 +46657,7 @@ "ciW" = ( /obj/effect/landmark/blobstart, /turf/open/floor/plating, -/area/engine/storage) +/area/engine/engineering) "ciX" = ( /obj/structure/closet/crate, /obj/item/stack/sheet/metal/fifty, @@ -46632,14 +46672,14 @@ /obj/item/lightreplacer, /obj/item/lightreplacer, /turf/open/floor/plating, -/area/engine/storage) +/area/engine/engineering) "ciY" = ( /obj/machinery/door/poddoor{ id = "Secure Storage"; name = "secure storage" }, /turf/open/floor/plating, -/area/engine/storage) +/area/engine/engineering) "ciZ" = ( /turf/open/floor/plating, /area/engine/engineering) @@ -46947,7 +46987,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/engine/storage) +/area/engine/engineering) "cjN" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -47234,11 +47274,11 @@ "ckB" = ( /obj/machinery/field/generator, /turf/open/floor/plating, -/area/engine/storage) +/area/engine/engineering) "ckC" = ( /obj/machinery/power/emitter, /turf/open/floor/plating, -/area/engine/storage) +/area/engine/engineering) "ckD" = ( /obj/effect/turf_decal/bot{ dir = 1 @@ -49324,8 +49364,10 @@ /area/ai_monitored/turret_protected/aisat_interior) "csT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/landmark/xmastree, -/turf/open/floor/plasteel/dark, +/obj/structure/chair/wood/normal{ + dir = 4 + }, +/turf/open/floor/carpet, /area/chapel/main) "csU" = ( /obj/structure/transit_tube/station/reverse, @@ -51958,13 +52000,11 @@ /area/maintenance/starboard/aft) "cBZ" = ( /obj/structure/table/wood, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/turf/open/floor/plasteel/grimy, +/obj/item/storage/crayons{ + pixel_y = -8 + }, +/obj/item/stamp/chap, +/turf/open/floor/carpet, /area/chapel/office) "cCb" = ( /obj/structure/table, @@ -54381,8 +54421,12 @@ /turf/open/floor/plasteel, /area/security/range) "fsQ" = ( -/turf/open/floor/plating, -/area/engine/storage) +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/chair/wood/normal{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/chapel/main) "fty" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/orange/visible, @@ -57403,6 +57447,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/aft) +"mFB" = ( +/obj/structure/table/glass, +/obj/item/storage/fancy/candle_box{ + pixel_x = 5; + pixel_y = 4 + }, +/turf/open/floor/wood/wood_large, +/area/chapel/main) "mGw" = ( /obj/machinery/door/airlock/security{ name = "Labor Shuttle"; @@ -57526,6 +57578,12 @@ /obj/structure/table/wood, /turf/open/floor/wood, /area/maintenance/bar) +"mQb" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood/wood_large, +/area/chapel/main) "mQp" = ( /obj/structure/cable{ icon_state = "1-2" @@ -57612,6 +57670,10 @@ "ndq" = ( /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"new" = ( +/obj/structure/musician/piano, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "nez" = ( /obj/structure/table/wood, /obj/item/instrument/piano_synth, @@ -58404,6 +58466,15 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"oZC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/landmark/xmastree{ + pixel_x = 14 + }, +/turf/open/floor/carpet, +/area/chapel/main) "paJ" = ( /obj/machinery/light{ dir = 4; @@ -59754,6 +59825,10 @@ /obj/structure/closet/crate, /turf/open/floor/plasteel, /area/engine/atmos) +"som" = ( +/obj/structure/sign/departments/holy, +/turf/closed/wall, +/area/chapel/main) "spR" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ dir = 4 @@ -61803,6 +61878,14 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"wIu" = ( +/obj/structure/table/wood, +/obj/item/candle{ + pixel_x = 5; + pixel_y = 2 + }, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "wJA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -61821,6 +61904,13 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"wPW" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Chapel Office"; + req_access_txt = "22" + }, +/turf/open/floor/plasteel/dark, +/area/chapel/office) "wQg" = ( /obj/structure/pool/ladder{ dir = 2; @@ -61966,6 +62056,15 @@ /obj/item/coin/gold, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"xci" = ( +/obj/structure/chair/wood/wings{ + dir = 8 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "xcl" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/dark/visible{ @@ -62236,8 +62335,13 @@ /turf/open/floor/carpet, /area/library) "xES" = ( -/turf/closed/wall/r_wall, -/area/engine/storage) +/obj/structure/closet/crate/coffin, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/dark, +/area/chapel/office) "xFM" = ( /obj/item/clothing/gloves/color/rainbow, /obj/item/clothing/head/soft/rainbow, @@ -62319,6 +62423,15 @@ /obj/effect/spawner/lootdrop/bedsheet, /turf/open/floor/wood, /area/crew_quarters/dorms) +"xPS" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/wood/wood_large, +/area/chapel/main) "xPY" = ( /obj/structure/table/wood, /obj/machinery/light{ @@ -87889,14 +88002,14 @@ cdc cdZ bVI cay -xES -xES -xES -xES -xES -xES -xES -xES +ccw +ccw +ccw +ccw +ccw +ccw +ccw +ccw cfL coH cBO @@ -88146,14 +88259,14 @@ bWB cec bVI kNv -xES +ccw chY ciX cjM ckB ckB ckB -xES +ccw cnY coH cgR @@ -88403,14 +88516,14 @@ cde ceb bVI cay -xES +ccw chY -fsQ +ciZ ciW ckB ckB ckC -xES +ccw cnX coH cps @@ -88660,14 +88773,14 @@ cdf ced bVI cay -xES -fsQ -fsQ -fsQ +ccw +ciZ +ciZ +ciZ ckC ckC ckC -xES +ccw coa coJ clJ @@ -88917,14 +89030,14 @@ bWB bWB bVI cay -xES -xES +ccw +ccw ciY ciY -xES -xES -xES -xES +ccw +ccw +ccw +ccw cnZ coH cgI @@ -108390,7 +108503,7 @@ cBZ aJT aLc aFw -aFz +new aFz aFz aRR @@ -108400,7 +108513,7 @@ aFz aRS aXW baz -aCR +som bcx aXq aYV @@ -108646,8 +108759,8 @@ aGY aII aJW aMX -aNW -aFz +aFw +xci aPl aQv aPl @@ -108902,8 +109015,8 @@ aFw aHi aHi aJV -aFw -aFw +aMX +wPW aFz aPk aQu @@ -109158,9 +109271,9 @@ aEi aFw aHl aID -aID +xES aFw -aMM +aCR aFz aFz aQw @@ -109169,7 +109282,7 @@ aRS aRS aRS aRS -aZf +oZC aRS bbF aYV @@ -109412,15 +109525,15 @@ aAz asB aCO aEh -aFz +aNW aHk -aFz -aFz -aTe +aNW +aNW +xPS aML aFz aFz -aQw +wIu cdl aRS aRS @@ -109669,11 +109782,11 @@ aAA asB aCQ aEk -aFB +aLr aHn -aFB csT -aFB +csT +mQb aLr aFB aPn @@ -109925,13 +110038,13 @@ awO awO asB aCP -aEj +aMM aFA aHm -aEj -aEj -aEj -aEj +fsQ +fsQ +aMM +aMM aEj aPm aQx @@ -110184,10 +110297,10 @@ asB aCR aEm aCR -aPl -aQv -aPl -aQv +aNW +aNW +aNW +aNW aCR aNY aCR @@ -110444,7 +110557,7 @@ aCR aHo aIE aKe -aIE +mFB aCR aNX aPo From 36e82c59d697a8cd6362fe32a95e6e4f62538d7e Mon Sep 17 00:00:00 2001 From: TripleShades Date: Fri, 15 Jan 2021 17:30:10 -0800 Subject: [PATCH 08/96] Update BoxStation.dmm --- _maps/map_files/BoxStation/BoxStation.dmm | 205 ++++++++++++---------- 1 file changed, 109 insertions(+), 96 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index 741f6eb071..260301b7df 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -12999,8 +12999,12 @@ c_tag = "Chapel North" }, /obj/structure/table/wood, -/obj/item/reagent_containers/food/snacks/grown/poppy, -/obj/item/reagent_containers/food/snacks/grown/harebell, +/obj/item/reagent_containers/food/snacks/grown/poppy{ + pixel_y = 5 + }, +/obj/item/reagent_containers/food/snacks/grown/harebell{ + pixel_y = 5 + }, /turf/open/floor/wood/wood_large, /area/chapel/main) "aCP" = ( @@ -13024,6 +13028,7 @@ /obj/machinery/light/small{ dir = 1 }, +/obj/structure/bookcase, /turf/open/floor/wood/wood_large, /area/chapel/main) "aCR" = ( @@ -14792,6 +14797,7 @@ "aHo" = ( /obj/structure/table/glass, /obj/item/storage/book/bible, +/obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/wood/wood_large, /area/chapel/main) "aHq" = ( @@ -15842,13 +15848,13 @@ "aJT" = ( /obj/structure/table/wood, /obj/item/paper_bin{ - pixel_y = 5 + pixel_y = 20 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/item/pen/fountain{ - pixel_y = 7 + pixel_y = 20 }, /turf/open/floor/carpet, /area/chapel/office) @@ -16398,7 +16404,9 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aLr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, /turf/open/floor/wood/wood_large, /area/chapel/main) "aLt" = ( @@ -16837,7 +16845,9 @@ /turf/open/floor/plasteel, /area/hydroponics) "aML" = ( -/obj/structure/bookcase, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, /turf/open/floor/wood/wood_large, /area/chapel/main) "aMM" = ( @@ -18129,6 +18139,7 @@ dir = 1 }, /obj/machinery/light/floor, +/obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plasteel/dark, /area/chapel/main) "aQA" = ( @@ -19167,6 +19178,7 @@ /obj/machinery/light{ dir = 4 }, +/obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plasteel/dark, /area/chapel/main) "aTk" = ( @@ -52001,9 +52013,8 @@ "cBZ" = ( /obj/structure/table/wood, /obj/item/storage/crayons{ - pixel_y = -8 + pixel_y = 8 }, -/obj/item/stamp/chap, /turf/open/floor/carpet, /area/chapel/office) "cCb" = ( @@ -53472,6 +53483,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"dmX" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Chapel Office"; + req_access_txt = "22" + }, +/turf/open/floor/plasteel/dark, +/area/chapel/office) "dnW" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 @@ -54421,11 +54439,8 @@ /turf/open/floor/plasteel, /area/security/range) "fsQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/chair/wood/normal{ - dir = 4 - }, -/turf/open/floor/carpet, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood/wood_large, /area/chapel/main) "fty" = ( /obj/structure/lattice, @@ -56778,6 +56793,12 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) +"kOL" = ( +/obj/item/kirbyplants{ + icon_state = "plant-18" + }, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "kPd" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, /obj/structure/cable{ @@ -57118,6 +57139,15 @@ }, /turf/open/floor/plasteel, /area/science/circuit) +"lNB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/landmark/xmastree{ + pixel_x = 14 + }, +/turf/open/floor/carpet, +/area/chapel/main) "lNH" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable{ @@ -57376,6 +57406,10 @@ /obj/effect/spawner/lootdrop/keg, /turf/open/floor/wood, /area/maintenance/bar) +"mtU" = ( +/obj/structure/sign/departments/holy, +/turf/closed/wall, +/area/chapel/main) "mug" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 @@ -57410,6 +57444,15 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/wood, /area/crew_quarters/theatre) +"mzv" = ( +/obj/structure/chair/wood/wings{ + dir = 8 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "mzB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/window, @@ -57447,14 +57490,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/aft) -"mFB" = ( -/obj/structure/table/glass, -/obj/item/storage/fancy/candle_box{ - pixel_x = 5; - pixel_y = 4 - }, -/turf/open/floor/wood/wood_large, -/area/chapel/main) "mGw" = ( /obj/machinery/door/airlock/security{ name = "Labor Shuttle"; @@ -57578,12 +57613,6 @@ /obj/structure/table/wood, /turf/open/floor/wood, /area/maintenance/bar) -"mQb" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood/wood_large, -/area/chapel/main) "mQp" = ( /obj/structure/cable{ icon_state = "1-2" @@ -57633,6 +57662,14 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"mZx" = ( +/obj/structure/table/glass, +/obj/item/storage/fancy/candle_box{ + pixel_x = 5; + pixel_y = 4 + }, +/turf/open/floor/wood/wood_large, +/area/chapel/main) "naI" = ( /turf/open/space, /area/space/station_ruins) @@ -57670,10 +57707,6 @@ "ndq" = ( /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) -"new" = ( -/obj/structure/musician/piano, -/turf/open/floor/plasteel/dark, -/area/chapel/main) "nez" = ( /obj/structure/table/wood, /obj/item/instrument/piano_synth, @@ -58466,15 +58499,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"oZC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/landmark/xmastree{ - pixel_x = 14 - }, -/turf/open/floor/carpet, -/area/chapel/main) "paJ" = ( /obj/machinery/light{ dir = 4; @@ -58915,6 +58939,14 @@ icon_state = "wood-broken2" }, /area/maintenance/port/fore) +"pXG" = ( +/obj/structure/table/wood, +/obj/item/candle{ + pixel_x = 5; + pixel_y = 2 + }, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "pYQ" = ( /obj/structure/reagent_dispensers/watertank, /obj/item/reagent_containers/glass/bucket, @@ -59009,6 +59041,12 @@ }, /turf/open/floor/plating, /area/maintenance/port/fore) +"qkn" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/wood/wood_large, +/area/chapel/main) "qkC" = ( /obj/structure/cable{ icon_state = "4-8" @@ -59825,10 +59863,6 @@ /obj/structure/closet/crate, /turf/open/floor/plasteel, /area/engine/atmos) -"som" = ( -/obj/structure/sign/departments/holy, -/turf/closed/wall, -/area/chapel/main) "spR" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ dir = 4 @@ -60544,6 +60578,11 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"tSm" = ( +/obj/structure/musician/piano, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "tSo" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/dark/visible{ @@ -61277,6 +61316,14 @@ /obj/item/clothing/under/misc/pj/blue, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"vqE" = ( +/obj/structure/closet/crate/coffin, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/dark, +/area/chapel/office) "vqP" = ( /obj/structure/bed/dogbed{ desc = "A comfy-looking pet bed. You can even strap your pet in, in case the gravity turns off."; @@ -61878,14 +61925,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) -"wIu" = ( -/obj/structure/table/wood, -/obj/item/candle{ - pixel_x = 5; - pixel_y = 2 - }, -/turf/open/floor/plasteel/dark, -/area/chapel/main) "wJA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -61904,13 +61943,6 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) -"wPW" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Chapel Office"; - req_access_txt = "22" - }, -/turf/open/floor/plasteel/dark, -/area/chapel/office) "wQg" = ( /obj/structure/pool/ladder{ dir = 2; @@ -62056,15 +62088,6 @@ /obj/item/coin/gold, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"xci" = ( -/obj/structure/chair/wood/wings{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/dark, -/area/chapel/main) "xcl" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/dark/visible{ @@ -62335,13 +62358,12 @@ /turf/open/floor/carpet, /area/library) "xES" = ( -/obj/structure/closet/crate/coffin, -/obj/structure/window/reinforced{ +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/chair/wood/normal{ dir = 4 }, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/dark, -/area/chapel/office) +/turf/open/floor/carpet, +/area/chapel/main) "xFM" = ( /obj/item/clothing/gloves/color/rainbow, /obj/item/clothing/head/soft/rainbow, @@ -62423,15 +62445,6 @@ /obj/effect/spawner/lootdrop/bedsheet, /turf/open/floor/wood, /area/crew_quarters/dorms) -"xPS" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/open/floor/wood/wood_large, -/area/chapel/main) "xPY" = ( /obj/structure/table/wood, /obj/machinery/light{ @@ -108503,8 +108516,8 @@ cBZ aJT aLc aFw -new -aFz +tSm +kOL aFz aRR aTe @@ -108513,7 +108526,7 @@ aFz aRS aXW baz -som +mtU bcx aXq aYV @@ -108760,7 +108773,7 @@ aII aJW aMX aFw -xci +mzv aPl aQv aPl @@ -109016,7 +109029,7 @@ aHi aHi aJV aMX -wPW +dmX aFz aPk aQu @@ -109271,7 +109284,7 @@ aEi aFw aHl aID -xES +vqE aFw aCR aFz @@ -109282,7 +109295,7 @@ aRS aRS aRS aRS -oZC +lNB aRS bbF aYV @@ -109529,11 +109542,11 @@ aNW aHk aNW aNW -xPS +qkn aML aFz aFz -wIu +pXG cdl aRS aRS @@ -109782,11 +109795,11 @@ aAA asB aCQ aEk -aLr +fsQ aHn csT csT -mQb +fsQ aLr aFB aPn @@ -110041,8 +110054,8 @@ aCP aMM aFA aHm -fsQ -fsQ +xES +xES aMM aMM aEj @@ -110557,7 +110570,7 @@ aCR aHo aIE aKe -mFB +mZx aCR aNX aPo From 1c9c0b7745c64e611b916da74b9fdf405997085c Mon Sep 17 00:00:00 2001 From: TripleShades Date: Fri, 15 Jan 2021 17:42:36 -0800 Subject: [PATCH 09/96] Update BoxStation.dmm --- _maps/map_files/BoxStation/BoxStation.dmm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index 260301b7df..ecd3dd065f 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -60579,8 +60579,8 @@ /turf/open/floor/wood, /area/maintenance/bar) "tSm" = ( -/obj/structure/musician/piano, /obj/effect/decal/cleanable/cobweb, +/obj/structure/musician/piano, /turf/open/floor/plasteel/dark, /area/chapel/main) "tSo" = ( From 3d8bae8cef9853f400469445baddc140c68dfeb3 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 17 Jan 2021 15:20:37 -0700 Subject: [PATCH 10/96] Update _quirk.dm --- code/datums/traits/_quirk.dm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/code/datums/traits/_quirk.dm b/code/datums/traits/_quirk.dm index c6466fdd96..22a851da1d 100644 --- a/code/datums/traits/_quirk.dm +++ b/code/datums/traits/_quirk.dm @@ -11,6 +11,8 @@ var/antag_removal_text // Text will be given to the quirk holder if they get an antag that has it blacklisted. var/mood_quirk = FALSE //if true, this quirk affects mood and is unavailable if moodlets are disabled var/mob_trait //if applicable, apply and remove this mob trait + /// should we immediately call on_spawn or add a timer to trigger + var/on_spawn_immediate = TRUE var/mob/living/quirk_holder /datum/quirk/New(mob/living/quirk_mob, spawn_effects) @@ -26,7 +28,10 @@ START_PROCESSING(SSquirks, src) add() if(spawn_effects) - on_spawn() + if(on_spawn_immediate) + on_spawn() + else + addtimer(CALLBACK(src, .proc/on_spawn), 0) addtimer(CALLBACK(src, .proc/post_add), 30) /datum/quirk/Destroy() From 085540af3cc4bf2134895d3676f1cac2d02c45d7 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 17 Jan 2021 15:21:31 -0700 Subject: [PATCH 11/96] Update negative.dm --- code/datums/traits/negative.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index 3cbf4b3cd2..cce138e82c 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -184,6 +184,7 @@ GLOBAL_LIST_EMPTY(family_heirlooms) gain_text = null // Handled by trauma. lose_text = null medical_record_text = "Patient has an untreatable impairment in motor function in the lower extremities." + on_spawn_immediate = FALSE /datum/quirk/paraplegic/add() var/datum/brain_trauma/severe/paralysis/paraplegic/T = new() From 6146a4ca9a1d87aa928c5b5338698fc3b4e9b9b3 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 17 Jan 2021 20:24:53 -0700 Subject: [PATCH 12/96] Update mob_holder.dm --- code/datums/elements/mob_holder.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/elements/mob_holder.dm b/code/datums/elements/mob_holder.dm index d770e0f30d..619f674969 100644 --- a/code/datums/elements/mob_holder.dm +++ b/code/datums/elements/mob_holder.dm @@ -141,7 +141,7 @@ /obj/item/clothing/head/mob_holder/dropped(mob/user) . = ..() - if(held_mob && isturf(loc))//don't release on soft-drops + if(held_mob && !ismob(loc))//don't release on soft-drops release() /obj/item/clothing/head/mob_holder/proc/release() From 9e52451df897a198e3034dc9a6db9e9e00f190bb Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 17 Jan 2021 20:26:52 -0700 Subject: [PATCH 13/96] Update colormate.dm --- code/game/machinery/colormate.dm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/code/game/machinery/colormate.dm b/code/game/machinery/colormate.dm index b4306d49a4..81f01a7262 100644 --- a/code/game/machinery/colormate.dm +++ b/code/game/machinery/colormate.dm @@ -62,6 +62,8 @@ if(!user.transferItemToLoc(I, src)) to_chat(user, "[I] is stuck to your hand!") return + if(QDELETED(I)) + return user.visible_message("[user] inserts [I] into [src]'s receptable.") inserted = I @@ -72,6 +74,11 @@ /obj/machinery/gear_painter/AllowDrop() return FALSE +/obj/machinery/gear_painter/handle_atom_del(atom/movable/AM) + if(AM == inserrted) + inserted = null + return ..() + /obj/machinery/gear_painter/AltClick(mob/user) . = ..() if(!user.CanReach(src)) From 1aae6a215402cdf4fd831ce32f8773d944fdc733 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 17 Jan 2021 20:35:08 -0700 Subject: [PATCH 14/96] Update colormate.dm --- code/game/machinery/colormate.dm | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/code/game/machinery/colormate.dm b/code/game/machinery/colormate.dm index b4306d49a4..7eb2e6bdda 100644 --- a/code/game/machinery/colormate.dm +++ b/code/game/machinery/colormate.dm @@ -6,10 +6,12 @@ density = TRUE anchored = TRUE circuit = /obj/item/circuitboard/machine/colormate - var/obj/item/inserted + var/atom/movable/inserted var/activecolor = "#FFFFFF" var/list/color_matrix_last var/matrix_mode = FALSE + /// Allow holder'd mobs + var/mobs_allowed = TRUE /// Minimum lightness for normal mode var/minimum_normal_lightness = 50 /// Minimum lightness for matrix mode, tested using 4 test colors of full red, green, blue, white. @@ -57,6 +59,15 @@ return if(user.a_intent == INTENT_HARM) return ..() + if(allow_mobs && istype(I, /obj/item/clothing/head/mob_holder)) + var/obj/item/clothing/head/mob_holder/H = I + var/mob/victim = H.held_mob + if(!user.transferItemToLoc(I, src)) + to_chat(user, "[I] is stuck to your hand!") + return + if(!QDELETED(H)) + H.release() + insert_mob(H, user) if(is_type_in_list(I, allowed_types) && is_operational()) if(!user.transferItemToLoc(I, src)) @@ -69,6 +80,14 @@ else return ..() +/obj/machinery/gear_painter/proc/insert_mob(mob/victim, mob/user) + if(inserted) + return + if(user) + visible_message("[user] stuffs [victim] into [src]!") + inserted = victim + inserted.forceMove(src) + /obj/machinery/gear_painter/AllowDrop() return FALSE From ffa56152d4037cc5eac137e2f4f276db67288022 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 17 Jan 2021 20:36:19 -0700 Subject: [PATCH 15/96] Update colormate.dm --- code/game/machinery/colormate.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/machinery/colormate.dm b/code/game/machinery/colormate.dm index 7eb2e6bdda..ad90678d1f 100644 --- a/code/game/machinery/colormate.dm +++ b/code/game/machinery/colormate.dm @@ -11,7 +11,7 @@ var/list/color_matrix_last var/matrix_mode = FALSE /// Allow holder'd mobs - var/mobs_allowed = TRUE + var/allow_mobs = TRUE /// Minimum lightness for normal mode var/minimum_normal_lightness = 50 /// Minimum lightness for matrix mode, tested using 4 test colors of full red, green, blue, white. From db1693b906e3d4d0bcc214f514743563978e656e Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 17 Jan 2021 20:39:00 -0700 Subject: [PATCH 16/96] Update colormate.dm --- code/game/machinery/colormate.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/machinery/colormate.dm b/code/game/machinery/colormate.dm index 81f01a7262..603b34ee32 100644 --- a/code/game/machinery/colormate.dm +++ b/code/game/machinery/colormate.dm @@ -75,7 +75,7 @@ return FALSE /obj/machinery/gear_painter/handle_atom_del(atom/movable/AM) - if(AM == inserrted) + if(AM == inserted) inserted = null return ..() From 0db94c5aa8f0e41e7f84eac46e0fe40c5ee3816a Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 17 Jan 2021 20:41:48 -0700 Subject: [PATCH 17/96] Update code/modules/reagents/chemistry/reagents/toxin_reagents.dm Co-authored-by: DeltaFire <46569814+DeltaFire15@users.noreply.github.com> --- code/modules/reagents/chemistry/reagents/toxin_reagents.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm index 769f876ef5..c9fbf6928a 100644 --- a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm @@ -783,7 +783,7 @@ value = REAGENT_VALUE_VERY_RARE /datum/reagent/toxin/rotatium/on_mob_life(mob/living/carbon/M) - return // until fixed - the rotations never stop + return ..() // until fixed - the rotations never stop /* if(M.hud_used) if(current_cycle >= 20 && current_cycle%20 == 0) From eb20501cc03d8eb61eb13a96a7f612b5461913cb Mon Sep 17 00:00:00 2001 From: TripleShades Date: Mon, 18 Jan 2021 11:50:41 -0800 Subject: [PATCH 18/96] oops missed this light switch from earlier box surgery pr --- _maps/map_files/BoxStation/BoxStation.dmm | 3 --- 1 file changed, 3 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index ecd3dd065f..4ad31f481f 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -34056,9 +34056,6 @@ /area/medical/surgery) "bCJ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/machinery/light_switch{ - pixel_y = 26 - }, /turf/open/floor/plasteel/white, /area/medical/surgery) "bCK" = ( From b956df22266c9cb0d9edbd261fd0f2fd529f339a Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Mon, 18 Jan 2021 21:59:00 +0000 Subject: [PATCH 19/96] name description implement --- code/__DEFINES/loadout.dm | 8 +- code/controllers/subsystem/job.dm | 38 ++++---- code/modules/client/preferences.dm | 86 ++++++++++++------- .../code/modules/client/loadout/_loadout.dm | 2 +- .../code/modules/client/loadout/neck.dm | 2 +- .../code/modules/client/loadout/suit.dm | 2 +- .../code/modules/client/loadout/uniform.dm | 16 ++-- .../code/modules/client/loadout/unlockable.dm | 2 +- 8 files changed, 94 insertions(+), 62 deletions(-) diff --git a/code/__DEFINES/loadout.dm b/code/__DEFINES/loadout.dm index ecd043a66a..973457692e 100644 --- a/code/__DEFINES/loadout.dm +++ b/code/__DEFINES/loadout.dm @@ -72,9 +72,11 @@ #define LOADOUT_LIMBS list(LOADOUT_LIMB_NORMAL,LOADOUT_LIMB_PROSTHETIC,LOADOUT_LIMB_AMPUTATED) //you can amputate your legs/arms though //loadout saving/loading specific defines -#define MAXIMUM_LOADOUT_SAVES 5 -#define LOADOUT_ITEM "loadout_item" -#define LOADOUT_COLOR "loadout_color" +#define MAXIMUM_LOADOUT_SAVES 5 +#define LOADOUT_ITEM "loadout_item" +#define LOADOUT_COLOR "loadout_color" +#define LOADOUT_CUSTOM_NAME "loadout_custom_name" +#define LOADOUT_CUSTOM_DESCRIPTION "loadout_custom_description" //loadout item flags #define LOADOUT_CAN_NAME (1<<0) //renaming items diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 779ee2fbac..f831c302fa 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -691,21 +691,29 @@ SUBSYSTEM_DEF(job) if(!permitted) continue var/obj/item/I = new G.path - if(I && length(i[LOADOUT_COLOR])) //handle loadout colors - //handle polychromic items - if((G.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) && length(G.loadout_initial_colors)) - var/datum/element/polychromic/polychromic = I.comp_lookup["item_worn_overlays"] //stupid way to do it but GetElement does not work for this - if(polychromic && istype(polychromic)) - var/list/polychromic_entry = polychromic.colors_by_atom[I] - if(polychromic_entry) - if(polychromic.suits_with_helmet_typecache[I.type]) //is this one of those toggleable hood/helmet things? - polychromic.connect_helmet(I,i[LOADOUT_COLOR]) - polychromic.colors_by_atom[I] = i[LOADOUT_COLOR] - I.update_icon() - else - //handle non-polychromic items (they only have one color) - I.add_atom_colour(i[LOADOUT_COLOR][1], FIXED_COLOUR_PRIORITY) - I.update_icon() + if(I) + if(length(i[LOADOUT_COLOR])) //handle loadout colors + //handle polychromic items + if((G.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) && length(G.loadout_initial_colors)) + var/datum/element/polychromic/polychromic = I.comp_lookup["item_worn_overlays"] //stupid way to do it but GetElement does not work for this + if(polychromic && istype(polychromic)) + var/list/polychromic_entry = polychromic.colors_by_atom[I] + if(polychromic_entry) + if(polychromic.suits_with_helmet_typecache[I.type]) //is this one of those toggleable hood/helmet things? + polychromic.connect_helmet(I,i[LOADOUT_COLOR]) + polychromic.colors_by_atom[I] = i[LOADOUT_COLOR] + I.update_icon() + else + //handle non-polychromic items (they only have one color) + I.add_atom_colour(i[LOADOUT_COLOR][1], FIXED_COLOUR_PRIORITY) + I.update_icon() + //when inputting the data it's already sanitized, but it's best to be safe + if(i[LOADOUT_CUSTOM_NAME]) + var/custom_name = strip_html(i[LOADOUT_CUSTOM_NAME]) + I.name = custom_name + if(i[LOADOUT_CUSTOM_DESCRIPTION]) + var/custom_description = strip_html(i[LOADOUT_CUSTOM_DESCRIPTION]) + I.desc = custom_description if(!M.equip_to_slot_if_possible(I, G.slot, disable_warning = TRUE, bypass_equip_delay_self = TRUE)) // If the job's dresscode compliant, try to put it in its slot, first if(iscarbon(M)) var/mob/living/carbon/C = M diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 7c6ba30b80..52772f126b 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -895,19 +895,23 @@ GLOBAL_LIST_EMPTY(preferences_datums) continue var/class_link = "" var/list/loadout_item = has_loadout_gear(loadout_slot, "[gear.type]") - var/extra_color_data = "" + var/extra_loadout_data = "" if(loadout_item) class_link = "style='white-space:normal;' class='linkOn' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=0'" if(gear.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC) - extra_color_data += "
Color" + extra_loadout_data += "
Color" for(var/loadout_color in loadout_item[LOADOUT_COLOR]) - extra_color_data += "   " + extra_loadout_data += "   " else var/loadout_color_non_poly = "#FFFFFF" if(length(loadout_item[LOADOUT_COLOR])) loadout_color_non_poly = loadout_item[LOADOUT_COLOR][1] - extra_color_data += "
Color" - extra_color_data += "   " + extra_loadout_data += "
Color" + extra_loadout_data += "   " + if(gear.loadout_flags & LOADOUT_CAN_NAME) + extra_loadout_data += "
Name [loadout_item[LOADOUT_CUSTOM_NAME] ? loadout_item[LOADOUT_CUSTOM_NAME] : "N/A"]" + if(gear.loadout_flags & LOADOUT_CAN_DESCRIPTION) + extra_loadout_data += "
Description" else if((gear_points - gear.cost) < 0) class_link = "style='white-space:normal;' class='linkOff'" else if(donoritem) @@ -916,7 +920,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) class_link = "style='white-space:normal;' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=1'" else class_link = "style='white-space:normal;background:#eb2e2e;' class='linkOff'" - dat += "[name][extra_color_data]" + dat += "[name][extra_loadout_data]" dat += "[gear.cost]" if(islist(gear.restricted_roles)) if(gear.restricted_roles.len) @@ -929,14 +933,15 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += gear.restricted_roles.Join(";") dat += "" if(!istype(gear, /datum/gear/unlockable)) - dat += "[gear.description]" + // the below line essentially means "if the loadout item is picked by the user and has a custom description, give it the custom description, otherwise give it the default description" + dat += "[loadout_item ? (loadout_item[LOADOUT_CUSTOM_DESCRIPTION] ? loadout_item[LOADOUT_CUSTOM_DESCRIPTION] : gear.description) : gear.description]" else //we add the user's progress to the description assuming they have progress var/datum/gear/unlockable/unlockable = gear var/progress_made = unlockable_loadout_data[unlockable.progress_key] if(!progress_made) progress_made = 0 - dat += "[gear.description] Progress: [min(progress_made, unlockable.progress_required)]/[unlockable.progress_required]" + dat += "[loadout_item ? (loadout_item[LOADOUT_CUSTOM_DESCRIPTION] ? loadout_item[LOADOUT_CUSTOM_DESCRIPTION] : gear.description) : gear.description] Progress: [min(progress_made, unlockable.progress_required)]/[unlockable.progress_required]" dat += "" if(4) // Content preferences @@ -2700,7 +2705,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) loadout_data["SAVE_[loadout_slot]"] += list(new_loadout_data) //double packed because it does the union of the CONTENTS of the lists else loadout_data["SAVE_[loadout_slot]"] = list(new_loadout_data) //double packed because you somehow had no save slot in your loadout? - if(href_list["loadout_color"]) + + if(href_list["loadout_color"] || href_list["loadout_color_polychromic"] || href_list["loadout_rename"] || href_list["loadout_redescribe"]) + //if the gear doesn't exist, or they don't have it, ignore the request var/name = html_decode(href_list["loadout_gear_name"]) var/datum/gear/G = GLOB.loadout_items[gear_category][gear_subcategory][name] if(!G) @@ -2708,29 +2715,44 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/user_gear = has_loadout_gear(loadout_slot, "[G.type]") if(!user_gear) return - if(!length(user_gear[LOADOUT_COLOR])) - user_gear[LOADOUT_COLOR] = list("#FFFFFF") - var/current_color = user_gear[LOADOUT_COLOR][1] - var/new_color = input(user, "Polychromic options", "Choose Color", current_color) as color|null - user_gear[LOADOUT_COLOR][1] = sanitize_hexcolor(new_color, 6, TRUE, current_color) - if(href_list["loadout_color_polychromic"]) - var/name = html_decode(href_list["loadout_gear_name"]) - var/datum/gear/G = GLOB.loadout_items[gear_category][gear_subcategory][name] - if(!G) - return - var/user_gear = has_loadout_gear(loadout_slot, "[G.type]") - if(!user_gear) - return - var/list/color_options = list() - for(var/i=1, i<=length(G.loadout_initial_colors), i++) - color_options += "Color [i]" - var/color_to_change = input(user, "Polychromic options", "Recolor [name]") as null|anything in color_options - if(color_to_change) - var/color_index = text2num(copytext(color_to_change, 7)) - var/current_color = user_gear[LOADOUT_COLOR][color_index] - var/new_color = input(user, "Polychromic options", "Choose [color_to_change] Color", current_color) as color|null - if(new_color) - user_gear[LOADOUT_COLOR][color_index] = sanitize_hexcolor(new_color, 6, TRUE, current_color) + + //possible requests: recolor, recolor (polychromic), rename, redescribe + //always make sure the gear allows said request before proceeding + + //non-poly coloring can only be done by non-poly items + if(href_list["loadout_color"] && !(G.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC)) + if(!length(user_gear[LOADOUT_COLOR])) + user_gear[LOADOUT_COLOR] = list("#FFFFFF") + var/current_color = user_gear[LOADOUT_COLOR][1] + var/new_color = input(user, "Polychromic options", "Choose Color", current_color) as color|null + user_gear[LOADOUT_COLOR][1] = sanitize_hexcolor(new_color, 6, TRUE, current_color) + + //poly coloring can only be done by poly items + if(href_list["loadout_color_polychromic"] && (G.loadout_flags & LOADOUT_CAN_COLOR_POLYCHROMIC)) + var/list/color_options = list() + for(var/i=1, i<=length(G.loadout_initial_colors), i++) + color_options += "Color [i]" + var/color_to_change = input(user, "Polychromic options", "Recolor [name]") as null|anything in color_options + if(color_to_change) + var/color_index = text2num(copytext(color_to_change, 7)) + var/current_color = user_gear[LOADOUT_COLOR][color_index] + var/new_color = input(user, "Polychromic options", "Choose [color_to_change] Color", current_color) as color|null + if(new_color) + user_gear[LOADOUT_COLOR][color_index] = sanitize_hexcolor(new_color, 6, TRUE, current_color) + + //both renaming and redescribing strip the input to stop html injection + + //renaming is only allowed if it has the flag for it + if(href_list["loadout_rename"] && (G.loadout_flags & LOADOUT_CAN_NAME)) + var/new_name = stripped_input(user, "Enter new name for item. Maximum 32 characters.", "Loadout Item Naming", null, 32) + if(new_name) + user_gear[LOADOUT_CUSTOM_NAME] = new_name + + //redescribing is only allowed if it has the flag for it + if(href_list["loadout_redescribe"] && (G.loadout_flags & LOADOUT_CAN_DESCRIPTION)) //redescribe isnt a real word but i can't think of the right term to use + var/new_description = stripped_input(user, "Enter new description for item. Maximum 500 characters.", "Loadout Item Redescribing", null, 500) + if(new_description) + user_gear[LOADOUT_CUSTOM_DESCRIPTION] = new_description ShowChoices(user) return 1 diff --git a/modular_citadel/code/modules/client/loadout/_loadout.dm b/modular_citadel/code/modules/client/loadout/_loadout.dm index 2a7b77bd47..5f895c4805 100644 --- a/modular_citadel/code/modules/client/loadout/_loadout.dm +++ b/modular_citadel/code/modules/client/loadout/_loadout.dm @@ -53,7 +53,7 @@ GLOBAL_LIST_EMPTY(loadout_whitelist_ids) var/path //item-to-spawn path var/cost = 1 //normally, each loadout costs a single point. var/geargroupID //defines the ID that the gear inherits from the config - var/loadout_flags = 0 + var/loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION var/list/loadout_initial_colors = list() //NEW DONATOR SYTSEM STUFF diff --git a/modular_citadel/code/modules/client/loadout/neck.dm b/modular_citadel/code/modules/client/loadout/neck.dm index 7c3c11f25c..c1f05e2990 100644 --- a/modular_citadel/code/modules/client/loadout/neck.dm +++ b/modular_citadel/code/modules/client/loadout/neck.dm @@ -86,7 +86,7 @@ /datum/gear/neck/polycloak name = "Polychromatic Cloak" path = /obj/item/clothing/neck/cloak/polychromic - loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC loadout_initial_colors = list("#FFFFFF", "#FFFFFF", "#808080") /datum/gear/neck/altpolycloak diff --git a/modular_citadel/code/modules/client/loadout/suit.dm b/modular_citadel/code/modules/client/loadout/suit.dm index 7c21ed84d0..f7ef891104 100644 --- a/modular_citadel/code/modules/client/loadout/suit.dm +++ b/modular_citadel/code/modules/client/loadout/suit.dm @@ -101,7 +101,7 @@ name = "Polychromic winter coat" path = /obj/item/clothing/suit/hooded/wintercoat/polychromic cost = 4 //too many people with neon green coats is hard on the eyes - loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC loadout_initial_colors = list("#6A6964", "#C4B8A6", "#0000FF") /datum/gear/suit/coat/med diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index b76e223f25..303783e1c5 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -47,7 +47,7 @@ /datum/gear/uniform/maidcostume/polychromic name = "Polychromic maid costume" path = /obj/item/clothing/under/rank/civilian/janitor/maid/polychromic - loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC loadout_initial_colors = list("#FFFFFF", "#000000") /datum/gear/uniform/mailmanuniform @@ -229,49 +229,49 @@ name = "Polychromic Jumpsuit" path = /obj/item/clothing/under/misc/polyjumpsuit cost = 2 - loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC loadout_initial_colors = list("#FFFFFF", "#808080", "#353535") /datum/gear/uniform/skirt/poly name = "Polychromic Jumpskirt" path = /obj/item/clothing/under/dress/skirt/polychromic cost = 2 - loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC loadout_initial_colors = list("#FFFFFF", "#F08080", "#808080") /datum/gear/uniform/suit/poly name = "Polychromic Button-up Shirt" path = /obj/item/clothing/under/misc/poly_shirt cost = 3 - loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC loadout_initial_colors = list("#FFFFFF", "#353535", "#353535") /datum/gear/uniform/skirt/poly/pleated name = "Polychromic Pleated Sweaterskirt" path = /obj/item/clothing/under/dress/skirt/polychromic/pleated cost = 3 - loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC loadout_initial_colors = list("#8CC6FF", "#808080", "#FF3535") /datum/gear/uniform/polykilt name = "Polychromic Kilt" path = /obj/item/clothing/under/costume/kilt/polychromic cost = 3 - loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC loadout_initial_colors = list("#FFFFFF", "#F08080") /datum/gear/uniform/shorts/poly name = "Polychromic Shorts" path = /obj/item/clothing/under/misc/polyshorts cost = 3 - loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC loadout_initial_colors = list("#353535", "#808080", "#808080") /datum/gear/uniform/shorts/poly/athletic name = "Polychromic Athletic Shorts" path = /obj/item/clothing/under/shorts/polychromic cost = 2 - loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC + loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC loadout_initial_colors = list("#FFFFFF", "#F08080") /datum/gear/uniform/hopcasual diff --git a/modular_citadel/code/modules/client/loadout/unlockable.dm b/modular_citadel/code/modules/client/loadout/unlockable.dm index 6e522812b8..67e0c06d8c 100644 --- a/modular_citadel/code/modules/client/loadout/unlockable.dm +++ b/modular_citadel/code/modules/client/loadout/unlockable.dm @@ -27,4 +27,4 @@ path = /obj/item/bedsheet/unlockable/miner progress_required = 100000 - progress_key = "miner" \ No newline at end of file + progress_key = "miner" From 837e766306f7bf9cc77ff5c909958afe79dcb066 Mon Sep 17 00:00:00 2001 From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Tue, 19 Jan 2021 01:04:01 +0000 Subject: [PATCH 20/96] fixes sanitization --- code/controllers/subsystem/job.dm | 6 +++--- code/modules/client/preferences.dm | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index f831c302fa..165f6e9d81 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -707,12 +707,12 @@ SUBSYSTEM_DEF(job) //handle non-polychromic items (they only have one color) I.add_atom_colour(i[LOADOUT_COLOR][1], FIXED_COLOUR_PRIORITY) I.update_icon() - //when inputting the data it's already sanitized, but it's best to be safe + //when inputting the data it's already sanitized if(i[LOADOUT_CUSTOM_NAME]) - var/custom_name = strip_html(i[LOADOUT_CUSTOM_NAME]) + var/custom_name = i[LOADOUT_CUSTOM_NAME] I.name = custom_name if(i[LOADOUT_CUSTOM_DESCRIPTION]) - var/custom_description = strip_html(i[LOADOUT_CUSTOM_DESCRIPTION]) + var/custom_description = i[LOADOUT_CUSTOM_DESCRIPTION] I.desc = custom_description if(!M.equip_to_slot_if_possible(I, G.slot, disable_warning = TRUE, bypass_equip_delay_self = TRUE)) // If the job's dresscode compliant, try to put it in its slot, first if(iscarbon(M)) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 52772f126b..7cc8be800c 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -2744,7 +2744,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) //renaming is only allowed if it has the flag for it if(href_list["loadout_rename"] && (G.loadout_flags & LOADOUT_CAN_NAME)) - var/new_name = stripped_input(user, "Enter new name for item. Maximum 32 characters.", "Loadout Item Naming", null, 32) + var/new_name = stripped_input(user, "Enter new name for item. Maximum [MAX_NAME_LEN] characters.", "Loadout Item Naming", null, MAX_NAME_LEN) if(new_name) user_gear[LOADOUT_CUSTOM_NAME] = new_name From f6eca7afad08724f4b25e386075dc15dae1730f0 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 20 Jan 2021 15:06:53 -0700 Subject: [PATCH 21/96] hugboxy shit --- code/datums/explosion.dm | 15 ++++++++++----- code/game/atoms.dm | 2 +- code/modules/mob/death.dm | 2 +- code/modules/mob/living/carbon/death.dm | 13 +++++++++---- code/modules/mob/living/death.dm | 12 ++++++------ 5 files changed, 27 insertions(+), 17 deletions(-) diff --git a/code/datums/explosion.dm b/code/datums/explosion.dm index ca65186063..24cc29fa54 100644 --- a/code/datums/explosion.dm +++ b/code/datums/explosion.dm @@ -89,7 +89,7 @@ GLOBAL_LIST_EMPTY(explosions) if(adminlog) message_admins("Explosion with size ([devastation_range], [heavy_impact_range], [light_impact_range], [flame_range]) in [ADMIN_VERBOSEJMP(epicenter)]") log_game("Explosion with size ([devastation_range], [heavy_impact_range], [light_impact_range], [flame_range]) in [loc_name(epicenter)]") - + deadchat_broadcast("An explosion with size ([devastation_range], [heavy_impact_range], [light_impact_range], [flame_range]) has occured at ([get_area(epicenter)])", turf_target = get_turf(epicenter)) var/x0 = epicenter.x @@ -115,7 +115,7 @@ GLOBAL_LIST_EMPTY(explosions) var/sound/creaking_explosion_sound = sound(get_sfx("explosion_creaking")) var/sound/hull_creaking_sound = sound(get_sfx("hull_creaking")) var/sound/explosion_echo_sound = sound('sound/effects/explosion_distant.ogg') - var/on_station = SSmapping.level_trait(epicenter.z, ZTRAIT_STATION) + var/on_station = SSmapping.level_trait(epicenter.z, ZTRAIT_STATION) var/creaking_explosion = FALSE if(prob(devastation_range*30+heavy_impact_range*5) && on_station) // Huge explosions are near guaranteed to make the station creak and whine, smaller ones might. @@ -148,7 +148,7 @@ GLOBAL_LIST_EMPTY(explosions) if(!baseshakeamount) // Devastating explosions rock the station and ground baseshakeamount = devastation_range*3 shake_camera(M, 10, clamp(baseshakeamount*0.25, 0, 2.5)) - + else if(M.can_hear() && !isspaceturf(get_turf(M)) && heavy_impact_range) // Big enough explosions echo throughout the hull var/echo_volume = 40 if(devastation_range) @@ -230,8 +230,13 @@ GLOBAL_LIST_EMPTY(explosions) atoms += A for(var/i in atoms) var/atom/A = i - if(!QDELETED(A)) - A.ex_act(dist) + if(QDELETED(A)) + continue + A.ex_act(dist, null, src) + if(QDELETED(A) || !ismovable(A)) + continue + var/atom/movable/AM = A + LAZYADD(AM.acted_explosions, explosion_id) if(flame_dist && prob(40) && !isspaceturf(T) && !T.density) new /obj/effect/hotspot(T) //Mostly for ambience! diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 7fbfe48f4e..be1ef4833a 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -429,7 +429,7 @@ /atom/proc/contents_explosion(severity, target) return //For handling the effects of explosions on contents that would not normally be effected -/atom/proc/ex_act(severity, target) +/atom/proc/ex_act(severity, target, datum/explosion/E) set waitfor = FALSE contents_explosion(severity, target) SEND_SIGNAL(src, COMSIG_ATOM_EX_ACT, severity, target) diff --git a/code/modules/mob/death.dm b/code/modules/mob/death.dm index 09336d2fea..476bddded3 100644 --- a/code/modules/mob/death.dm +++ b/code/modules/mob/death.dm @@ -1,6 +1,6 @@ //This is the proc for gibbing a mob. Cannot gib ghosts. //added different sort of gibs and animations. N -/mob/proc/gib() +/mob/proc/gib(no_brain, no_organs, no_bodyparts, datum/explosion/was_explosion) return //This is the proc for turning a mob into ash. Mostly a copy of gib code (above). diff --git a/code/modules/mob/living/carbon/death.dm b/code/modules/mob/living/carbon/death.dm index ee2f945b65..528848fb14 100644 --- a/code/modules/mob/living/carbon/death.dm +++ b/code/modules/mob/living/carbon/death.dm @@ -17,7 +17,7 @@ if(SSticker.mode) SSticker.mode.check_win() //Calls the rounds wincheck, mainly for wizard, malf, and changeling now -/mob/living/carbon/gib(no_brain, no_organs, no_bodyparts) +/mob/living/carbon/gib(no_brain, no_organs, no_bodyparts, datum/explosion/was_explosion) var/atom/Tsec = drop_location() for(var/mob/M in src) if(M in stomach_contents) @@ -27,7 +27,7 @@ "You burst out of [src]!") ..() -/mob/living/carbon/spill_organs(no_brain, no_organs, no_bodyparts) +/mob/living/carbon/spill_organs(no_brain, no_organs, no_bodyparts, datum/explosion/was_explosion) var/atom/Tsec = drop_location() if(!no_bodyparts) if(no_organs)//so the organs don't get transfered inside the bodyparts we'll drop. @@ -41,6 +41,8 @@ qdel(O) //so the brain isn't transfered to the head when the head drops. continue if(!(O.organ_flags & ORGAN_NO_DISMEMBERMENT) && check_zone(O.zone) == BODY_ZONE_CHEST) + if(was_explosion) + LAZYADD(O.acted_explosions, was_explosion.explosion_id) O.Remove() O.forceMove(Tsec) O.throw_at(get_edge_target_turf(src,pick(GLOB.alldirs)),rand(1,3),5) @@ -50,13 +52,16 @@ if(I.organ_flags & ORGAN_NO_DISMEMBERMENT || (no_brain && istype(I, /obj/item/organ/brain)) || (no_organs && !istype(I, /obj/item/organ/brain))) qdel(I) continue + if(was_explosion) + LAZYADD(I.acted_explosions, was_explosion.explosion_id) I.Remove() I.forceMove(Tsec) I.throw_at(get_edge_target_turf(src,pick(GLOB.alldirs)),rand(1,3),5) - -/mob/living/carbon/spread_bodyparts() +/mob/living/carbon/spread_bodyparts(no_brain, no_organs, datum/explosion/was_explosion) for(var/X in bodyparts) var/obj/item/bodypart/BP = X + if(was_explosion) + LAZYADD(BP.acted_explosions, was_explosion.explosion_id) BP.drop_limb() BP.throw_at(get_edge_target_turf(src,pick(GLOB.alldirs)),rand(1,3),5) diff --git a/code/modules/mob/living/death.dm b/code/modules/mob/living/death.dm index 688b0cf63e..be9cd0aabb 100644 --- a/code/modules/mob/living/death.dm +++ b/code/modules/mob/living/death.dm @@ -1,4 +1,4 @@ -/mob/living/gib(no_brain, no_organs, no_bodyparts) +/mob/living/gib(no_brain, no_organs, no_bodyparts, datum/explosion/was_explosion) var/prev_lying = lying if(stat != DEAD) death(1) @@ -6,22 +6,22 @@ if(!prev_lying) gib_animation() - spill_organs(no_brain, no_organs, no_bodyparts) + spill_organs(no_brain, no_organs, no_bodyparts, was_explosion) if(!no_bodyparts) - spread_bodyparts(no_brain, no_organs) + spread_bodyparts(no_brain, no_organs, was_explosion) for(var/X in implants) var/obj/item/implant/I = X qdel(I) - spawn_gibs(no_bodyparts) + spawn_gibs(no_bodyparts, null, was_explosion) qdel(src) /mob/living/proc/gib_animation() return -/mob/living/proc/spawn_gibs(with_bodyparts, atom/loc_override) +/mob/living/proc/spawn_gibs(with_bodyparts, atom/loc_override, datum/explosion/was_explosion) var/location = loc_override ? loc_override.drop_location() : drop_location() if(mob_biotypes & MOB_ROBOTIC) new /obj/effect/gibspawner/robot(location, src, get_static_viruses()) @@ -31,7 +31,7 @@ /mob/living/proc/spill_organs() return -/mob/living/proc/spread_bodyparts() +/mob/living/proc/spread_bodyparts(no_brain, no_organs, datum/explosion/was_explosion) return /mob/living/dust(just_ash, drop_items, force) From 94d419c6cd9db17b57e65882434b112110312f11 Mon Sep 17 00:00:00 2001 From: Putnam3145 Date: Wed, 20 Jan 2021 14:08:07 -0800 Subject: [PATCH 22/96] Update modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm Co-authored-by: DeltaFire <46569814+DeltaFire15@users.noreply.github.com> --- .../code/modules/reagents/chemistry/recipes/fermi.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm b/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm index 18c52171f4..c144fa9196 100644 --- a/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm +++ b/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm @@ -94,7 +94,7 @@ e.start() if(ImpureTot) //If impure, v.small emp (0.6 or less) - empulse(T, impureTot, 1) + empulse(T, ImpureTot, 1) my_atom.reagents.clear_reagents() //just in case return From f3cdaf941b8e531a8f1bca68109aa6866431242f Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 20 Jan 2021 15:11:04 -0700 Subject: [PATCH 23/96] Update colormate.dm --- code/game/machinery/colormate.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/machinery/colormate.dm b/code/game/machinery/colormate.dm index ad90678d1f..8b6db6e45e 100644 --- a/code/game/machinery/colormate.dm +++ b/code/game/machinery/colormate.dm @@ -67,7 +67,7 @@ return if(!QDELETED(H)) H.release() - insert_mob(H, user) + insert_mob(victim, user) if(is_type_in_list(I, allowed_types) && is_operational()) if(!user.transferItemToLoc(I, src)) From e06f0bbc722a0859b65c6942738b7f1e74689254 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 20 Jan 2021 16:01:09 -0700 Subject: [PATCH 24/96] fixes --- code/datums/components/riding.dm | 2 +- code/modules/mob/living/carbon/human/human.dm | 3 +++ .../mob/living/carbon/human/human_defines.dm | 2 +- tgstation.dme | 20 +++++++++++++++++++ 4 files changed, 25 insertions(+), 2 deletions(-) diff --git a/code/datums/components/riding.dm b/code/datums/components/riding.dm index e9aa5afe92..e11eca2975 100644 --- a/code/datums/components/riding.dm +++ b/code/datums/components/riding.dm @@ -37,7 +37,7 @@ qdel(src) /datum/component/riding/proc/vehicle_mob_buckle(datum/source, mob/living/M, force) - handle_vehicle_offsets() + handle_vehicle_offsets(M.buckled?.dir) /datum/component/riding/proc/handle_vehicle_layer(dir) var/atom/movable/AM = parent diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index df7ed66169..95efd90042 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1010,6 +1010,9 @@ riding_datum.ride_check_rider_restrained = TRUE if(buckled_mobs && ((target in buckled_mobs) || (buckled_mobs.len >= max_buckled_mobs)) || buckled) return + if(istype(target, /mob/living/silicon/pai)) + hands_needed = 0 + target_hands_needed = 0 var/equipped_hands_self var/equipped_hands_target if(hands_needed) diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index a82151cc1d..eedc59d9d5 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -71,7 +71,7 @@ var/list/datum/bioware = list() 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/static/list/can_ride_typecache = typecacheof(list(/mob/living/carbon/human, /mob/living/simple_animal/slime, /mob/living/simple_animal/parrot, /mob/living/silicon/pai)) var/lastpuke = 0 var/account_id var/last_fire_update diff --git a/tgstation.dme b/tgstation.dme index a0f5d54c03..88ea0be260 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -80,6 +80,7 @@ #include "code\__DEFINES\monkeys.dm" #include "code\__DEFINES\move_force.dm" #include "code\__DEFINES\movement.dm" +#include "code\__DEFINES\movement.dm" #include "code\__DEFINES\movespeed_modification.dm" #include "code\__DEFINES\nanites.dm" #include "code\__DEFINES\networks.dm" @@ -203,6 +204,7 @@ #include "code\__HELPERS\sorts\MergeSort.dm" #include "code\__HELPERS\sorts\TimSort.dm" #include "code\_globalvars\admin.dm" +#include "code\_globalvars\admin.dm" #include "code\_globalvars\bitfields.dm" #include "code\_globalvars\configuration.dm" #include "code\_globalvars\game_modes.dm" @@ -3516,8 +3518,26 @@ #include "code\modules\tgui_panel\audio.dm" #include "code\modules\tgui_panel\external.dm" #include "code\modules\tgui_panel\telemetry.dm" +#include "code\modules\unit_tests\merge_type.dm" #include "code\modules\tgui_panel\tgui_panel.dm" +#include "code\modules\unit_tests\reagent_mod_procs.dm" +#include "code\modules\unit_tests\teleporters.dm" +#include "code\modules\unit_tests\stomach.dm" +#include "code\modules\unit_tests\species_whitelists.dm" +#include "code\modules\unit_tests\siunit.dm" +#include "code\modules\unit_tests\serving_tray.dm" +#include "code\modules\unit_tests\reagent_mod_expose.dm" +#include "code\modules\unit_tests\projectiles.dm" +#include "code\modules\unit_tests\pills.dm" +#include "code\modules\unit_tests\keybinding_init.dm" +#include "code\modules\unit_tests\initialize_sanity.dm" +#include "code\modules\unit_tests\holidays.dm" +#include "code\modules\unit_tests\emoting.dm" +#include "code\modules\unit_tests\heretic_knowledge.dm" +#include "code\modules\unit_tests\confusion.dm" +#include "code\modules\unit_tests\combat.dm" #include "code\modules\tooltip\tooltip.dm" +#include "code\modules\unit_tests\card_mismatch.dm" #include "code\modules\unit_tests\_unit_tests.dm" #include "code\modules\uplink\uplink_devices.dm" #include "code\modules\uplink\uplink_items.dm" From 235ca8809a010fa687e2ae3ce8a0e5aad7db0f92 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 20 Jan 2021 16:04:52 -0700 Subject: [PATCH 25/96] uh --- code/modules/mob/living/carbon/human/human.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 95efd90042..c51a6e6f99 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -938,7 +938,8 @@ admin_ticket_log(src, msg) /mob/living/carbon/human/MouseDrop_T(mob/living/target, mob/living/user) - if(pulling == target && grab_state >= GRAB_AGGRESSIVE && stat == CONSCIOUS) + var/GS_needed = istype(target, /mob/living/silicon/pai)? GRAB_PASSIVE : GRAB_AGGRESSIVE + if(pulling == target && grab_state >= GS_NEEDED && stat == CONSCIOUS) //If they dragged themselves and we're currently aggressively grabbing them try to piggyback if(user == target && can_piggyback(target)) piggyback(target) From 97924636908d465cd6ccc9b23d95d2d3a48859b9 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 20 Jan 2021 16:05:21 -0700 Subject: [PATCH 26/96] dme fix --- tgstation.dme | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/tgstation.dme b/tgstation.dme index 88ea0be260..a0f5d54c03 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -80,7 +80,6 @@ #include "code\__DEFINES\monkeys.dm" #include "code\__DEFINES\move_force.dm" #include "code\__DEFINES\movement.dm" -#include "code\__DEFINES\movement.dm" #include "code\__DEFINES\movespeed_modification.dm" #include "code\__DEFINES\nanites.dm" #include "code\__DEFINES\networks.dm" @@ -204,7 +203,6 @@ #include "code\__HELPERS\sorts\MergeSort.dm" #include "code\__HELPERS\sorts\TimSort.dm" #include "code\_globalvars\admin.dm" -#include "code\_globalvars\admin.dm" #include "code\_globalvars\bitfields.dm" #include "code\_globalvars\configuration.dm" #include "code\_globalvars\game_modes.dm" @@ -3518,26 +3516,8 @@ #include "code\modules\tgui_panel\audio.dm" #include "code\modules\tgui_panel\external.dm" #include "code\modules\tgui_panel\telemetry.dm" -#include "code\modules\unit_tests\merge_type.dm" #include "code\modules\tgui_panel\tgui_panel.dm" -#include "code\modules\unit_tests\reagent_mod_procs.dm" -#include "code\modules\unit_tests\teleporters.dm" -#include "code\modules\unit_tests\stomach.dm" -#include "code\modules\unit_tests\species_whitelists.dm" -#include "code\modules\unit_tests\siunit.dm" -#include "code\modules\unit_tests\serving_tray.dm" -#include "code\modules\unit_tests\reagent_mod_expose.dm" -#include "code\modules\unit_tests\projectiles.dm" -#include "code\modules\unit_tests\pills.dm" -#include "code\modules\unit_tests\keybinding_init.dm" -#include "code\modules\unit_tests\initialize_sanity.dm" -#include "code\modules\unit_tests\holidays.dm" -#include "code\modules\unit_tests\emoting.dm" -#include "code\modules\unit_tests\heretic_knowledge.dm" -#include "code\modules\unit_tests\confusion.dm" -#include "code\modules\unit_tests\combat.dm" #include "code\modules\tooltip\tooltip.dm" -#include "code\modules\unit_tests\card_mismatch.dm" #include "code\modules\unit_tests\_unit_tests.dm" #include "code\modules\uplink\uplink_devices.dm" #include "code\modules\uplink\uplink_items.dm" From 20f06cae0fd787fbdf4df2c88fb4f399c61da8a1 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 20 Jan 2021 16:07:42 -0700 Subject: [PATCH 27/96] fix --- code/modules/mob/living/carbon/human/human.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index c51a6e6f99..98054b6ec2 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -939,7 +939,7 @@ /mob/living/carbon/human/MouseDrop_T(mob/living/target, mob/living/user) var/GS_needed = istype(target, /mob/living/silicon/pai)? GRAB_PASSIVE : GRAB_AGGRESSIVE - if(pulling == target && grab_state >= GS_NEEDED && stat == CONSCIOUS) + if(pulling == target && grab_state >= GS_needed && stat == CONSCIOUS) //If they dragged themselves and we're currently aggressively grabbing them try to piggyback if(user == target && can_piggyback(target)) piggyback(target) From 996ad0634defd080c6359ea8aadfae38a864afa6 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 20 Jan 2021 16:16:06 -0700 Subject: [PATCH 28/96] fix --- code/modules/mob/living/carbon/human/human.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 98054b6ec2..adcc9795dd 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -952,11 +952,11 @@ . = ..() //src is the user that will be carrying, target is the mob to be carried -/mob/living/carbon/human/proc/can_piggyback(mob/living/carbon/target) - return (istype(target) && target.stat == CONSCIOUS) +/mob/living/carbon/human/proc/can_piggyback(mob/living/target) + return (istype(target, /mob/living/carbon) || istype(target, /mob/living/silicon)) && target.stat == CONSCIOUS /mob/living/carbon/human/proc/can_be_firemanned(mob/living/carbon/target) - return (ishuman(target) && !CHECK_MOBILITY(target, MOBILITY_STAND)) + return (ishuman(target) || ispAI(target) && !CHECK_MOBILITY(target, MOBILITY_STAND)) || ispAI(target) /mob/living/carbon/human/proc/fireman_carry(mob/living/carbon/target) var/carrydelay = 50 //if you have latex you are faster at grabbing From 34473c2ac7b15331127708087b758d122d789d75 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 20 Jan 2021 16:55:19 -0700 Subject: [PATCH 29/96] fix --- code/modules/mob/living/carbon/human/human.dm | 13 ++++++------- code/modules/mob/living/silicon/pai/pai.dm | 4 ++++ config/game_options.txt | 3 +++ 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index adcc9795dd..3c1cc25497 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -963,19 +963,18 @@ var/skills_space = "" //cobby told me to do this if(HAS_TRAIT(src, TRAIT_QUICKER_CARRY)) carrydelay = 30 - skills_space = "expertly" + skills_space = "expertly " else if(HAS_TRAIT(src, TRAIT_QUICK_CARRY)) carrydelay = 40 - skills_space = "quickly" + skills_space = "quickly " if(can_be_firemanned(target) && !incapacitated(FALSE, TRUE)) - visible_message("[src] starts [skills_space] lifting [target] onto their back..", + visible_message("[src] starts [skills_space]lifting [target] onto their back..", //Joe Medic starts quickly/expertly lifting Grey Tider onto their back.. - "[carrydelay < 35 ? "Using your gloves' nanochips, you" : "You"] [skills_space] start to lift [target] onto your back[carrydelay == 40 ? ", while assisted by the nanochips in your gloves.." : "..."]") + "[carrydelay < 35 ? "Using your gloves' nanochips, you" : "You"] [skills_space]start to lift [target] onto your back[carrydelay == 40 ? ", while assisted by the nanochips in your gloves.." : "..."]") //(Using your gloves' nanochips, you/You) ( /quickly/expertly) start to lift Grey Tider onto your back(, while assisted by the nanochips in your gloves../...) if(do_after(src, carrydelay, TRUE, target)) //Second check to make sure they're still valid to be carried if(can_be_firemanned(target) && !incapacitated(FALSE, TRUE)) - target.set_resting(FALSE, TRUE) buckle_mob(target, TRUE, TRUE, 90, 1, 0, TRUE) return visible_message("[src] fails to fireman carry [target]!") @@ -993,13 +992,13 @@ if(target.incapacitated(FALSE, TRUE) || incapacitated(FALSE, TRUE)) target.visible_message("[target] can't hang onto [src]!") return - buckle_mob(target, TRUE, TRUE, FALSE, 1, 2, FALSE) + buckle_mob(target, TRUE, TRUE, 0, 1, 2, FALSE) else visible_message("[target] fails to climb onto [src]!") else to_chat(target, "You can't piggyback ride [src] right now!") -/mob/living/carbon/human/buckle_mob(mob/living/target, force = FALSE, check_loc = TRUE, lying_buckle = FALSE, hands_needed = 0, target_hands_needed = 0, fireman = FALSE) +/mob/living/carbon/human/buckle_mob(mob/living/target, force = FALSE, check_loc = TRUE, lying_buckle = 0, hands_needed = 0, target_hands_needed = 0, fireman = FALSE) if(!force)//humans are only meant to be ridden through piggybacking and special cases return if(!is_type_in_typecache(target, can_ride_typecache)) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 2ab74664a3..5740f98e90 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -143,6 +143,10 @@ custom_holoform.Grant(src) emitter_next_use = world.time + 10 SECONDS +/mob/living/silicon/pai/deployed/Initialize() + . = ..() + fold_out(TRUE) + /mob/living/silicon/pai/ComponentInitialize() . = ..() if(possible_chassis[chassis]) diff --git a/config/game_options.txt b/config/game_options.txt index 3c53d9fecb..7776d87d4e 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -675,3 +675,6 @@ TURF_DIRT_THRESHOLD 100 ## Default alpha of dirt on spawn DIRT_ALPHA_STARTING 127 + +## Allows pAI custom holoforms +PAI_CUSTOM_HOLOFORMS From 1979dcd23133743dbc7b1535348765031a2c3968 Mon Sep 17 00:00:00 2001 From: shellspeed1 <46614774+shellspeed1@users.noreply.github.com> Date: Sat, 23 Jan 2021 01:30:50 -0800 Subject: [PATCH 30/96] Update uplink_stealth.dm --- code/modules/uplink/uplink_items/uplink_stealth.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/uplink/uplink_items/uplink_stealth.dm b/code/modules/uplink/uplink_items/uplink_stealth.dm index 18a7707a88..da1d13119d 100644 --- a/code/modules/uplink/uplink_items/uplink_stealth.dm +++ b/code/modules/uplink/uplink_items/uplink_stealth.dm @@ -102,6 +102,7 @@ along with slurred speech, aggression, and the ability to infect others with this agent." item = /obj/item/storage/box/syndie_kit/romerol cost = 25 + player_minimum = 30 cant_discount = TRUE exclude_modes = list(/datum/game_mode/nuclear) From 3ae6d6329028b0c54af5f5e225fa39c9f0723412 Mon Sep 17 00:00:00 2001 From: TripleShades Date: Mon, 25 Jan 2021 11:24:40 -0800 Subject: [PATCH 31/96] i can always change it back right --- _maps/map_files/BoxStation/BoxStation.dmm | 504 +++++++++++----------- 1 file changed, 253 insertions(+), 251 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index 4ad31f481f..b2af6bd093 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -12995,8 +12995,12 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/machinery/camera{ - c_tag = "Chapel North" +/obj/machinery/hydroponics/soil, +/turf/open/floor/grass, +/area/chapel/main) +"aCP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 }, /obj/structure/table/wood, /obj/item/reagent_containers/food/snacks/grown/poppy{ @@ -13005,31 +13009,21 @@ /obj/item/reagent_containers/food/snacks/grown/harebell{ pixel_y = 5 }, -/turf/open/floor/wood/wood_large, -/area/chapel/main) -"aCP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 +/obj/machinery/light{ + dir = 1 }, -/obj/structure/table/wood, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, /turf/open/floor/wood/wood_large, /area/chapel/main) "aCQ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/machinery/light/small{ - dir = 1 +/obj/machinery/hydroponics/soil, +/obj/structure/window/reinforced{ + dir = 4; + pixel_x = 3 }, -/obj/structure/bookcase, -/turf/open/floor/wood/wood_large, +/turf/open/floor/grass, /area/chapel/main) "aCR" = ( /turf/closed/wall, @@ -13582,28 +13576,17 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aEm" = ( -/obj/machinery/door/window{ - dir = 8; - name = "Mass Driver"; - req_access_txt = "22" +/obj/structure/bookcase, +/obj/machinery/camera{ + c_tag = "Chapel North" }, -/obj/machinery/mass_driver{ - dir = 4; - id = "chapelgun"; - name = "Holy Driver" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aEn" = ( -/obj/machinery/door/poddoor{ - id = "chapelgun"; - name = "Chapel Launcher Door" +/obj/structure/sign/warning/vacuum/external{ + pixel_y = 32 }, -/obj/structure/fans/tiny, -/turf/open/floor/plating, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aEz" = ( /obj/machinery/power/apc{ @@ -13997,14 +13980,8 @@ /turf/open/floor/plasteel/dark, /area/chapel/main) "aFA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/computer/pod/old{ - density = 0; - icon = 'icons/obj/airlock_machines.dmi'; - icon_state = "airlock_control_standby"; - id = "chapelgun"; - name = "Mass Driver Controller"; - pixel_x = 24 +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 }, /turf/open/floor/wood/wood_large, /area/chapel/main) @@ -14743,9 +14720,9 @@ /turf/open/floor/plasteel, /area/gateway) "aHi" = ( -/obj/structure/closet/crate/coffin, -/obj/structure/window/reinforced{ - dir = 8 +/obj/machinery/door/morgue{ + name = "Confession Booth (Chaplain)"; + req_access_txt = "22" }, /turf/open/floor/plasteel/dark, /area/chapel/office) @@ -14762,46 +14739,47 @@ /turf/open/floor/plasteel, /area/gateway) "aHk" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/structure/table/wood, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, /turf/open/floor/wood/wood_large, /area/chapel/main) "aHl" = ( -/obj/structure/closet/crate/coffin, -/obj/machinery/door/window/eastleft{ - name = "Coffin Storage"; - req_access_txt = "22" +/obj/structure/chair/comfy/plywood, +/obj/machinery/light/floor, +/obj/item/radio/intercom{ + broadcasting = 1; + frequency = 1480; + name = "Confessional Intercom"; + pixel_x = 25 }, +/obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plasteel/dark, /area/chapel/office) "aHm" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/obj/structure/chair/wood/normal{ - dir = 4 - }, -/turf/open/floor/carpet, +/obj/structure/lattice, +/turf/closed/wall, /area/chapel/main) "aHn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 +/obj/machinery/mass_driver{ + dir = 4; + id = "chapelgun"; + name = "Holy Driver" }, -/obj/structure/chair/wood/normal{ - dir = 4 +/obj/machinery/door/window{ + dir = 8; + name = "Mass Driver"; + req_access_txt = "22" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 }, -/turf/open/floor/carpet, -/area/chapel/main) -"aHo" = ( -/obj/structure/table/glass, -/obj/item/storage/book/bible, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/wood/wood_large, -/area/chapel/main) -"aHq" = ( -/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/chapel/main) "aHu" = ( @@ -15301,8 +15279,13 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "aIz" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/structure/table/wood, +/obj/item/storage/crayons{ + pixel_y = 8 + }, /turf/open/floor/wood/wood_large, /area/chapel/office) "aIB" = ( @@ -15317,19 +15300,15 @@ "aIC" = ( /obj/effect/landmark/start/chaplain, /obj/structure/chair/comfy/plywood, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/open/floor/carpet, /area/chapel/office) "aID" = ( -/obj/structure/closet/crate/coffin, -/obj/structure/window/reinforced{ - dir = 4 - }, +/obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plasteel/dark, /area/chapel/office) -"aIE" = ( -/obj/structure/table/glass, -/turf/open/floor/wood/wood_large, -/area/chapel/main) "aIH" = ( /obj/structure/table, /obj/item/storage/box/lights/mixed, @@ -15806,13 +15785,13 @@ /area/hydroponics) "aJM" = ( /obj/structure/table/wood, -/obj/item/flashlight/lamp{ - pixel_y = 10 - }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/item/flashlight/lamp{ + pixel_y = 15 + }, /turf/open/floor/wood/wood_large, /area/chapel/office) "aJO" = ( @@ -15847,14 +15826,14 @@ /area/library) "aJT" = ( /obj/structure/table/wood, -/obj/item/paper_bin{ - pixel_y = 20 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/item/paper_bin{ + pixel_y = 4 + }, /obj/item/pen/fountain{ - pixel_y = 20 + pixel_y = 4 }, /turf/open/floor/carpet, /area/chapel/office) @@ -15874,15 +15853,12 @@ /turf/open/floor/carpet, /area/chapel/office) "aJV" = ( -/obj/structure/closet/crate/coffin, -/obj/machinery/door/window/eastleft{ - dir = 8; - name = "Coffin Storage"; - req_access_txt = "22" +/obj/effect/landmark/event_spawn, +/obj/effect/turf_decal/stripes/line{ + dir = 4 }, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/dark, -/area/chapel/office) +/turf/open/floor/plating, +/area/chapel/main) "aJW" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 @@ -15946,12 +15922,10 @@ /turf/open/floor/plasteel, /area/gateway) "aKe" = ( -/obj/structure/table/glass, -/obj/item/storage/box/matches{ - pixel_x = 4; - pixel_y = -8 +/obj/structure/chair/wood/normal{ + dir = 4 }, -/turf/open/floor/wood/wood_large, +/turf/open/floor/carpet, /area/chapel/main) "aKf" = ( /obj/structure/cable{ @@ -16407,7 +16381,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/wood/wood_large, +/turf/open/floor/plasteel/dark, /area/chapel/main) "aLt" = ( /turf/open/floor/wood{ @@ -16848,7 +16822,10 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, -/turf/open/floor/wood/wood_large, +/obj/structure/chair/wood/wings{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, /area/chapel/main) "aMM" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -17210,23 +17187,22 @@ /turf/open/floor/wood/wood_large, /area/chapel/main) "aNX" = ( -/obj/item/radio/intercom{ - broadcasting = 1; - frequency = 1480; - name = "Confessional Intercom"; - pixel_x = 25 - }, -/obj/structure/chair/comfy/plywood, -/obj/machinery/light/floor, -/turf/open/floor/plasteel/dark, -/area/chapel/main) -"aNY" = ( -/obj/machinery/door/morgue{ - name = "Confession Booth (Chaplain)"; +/obj/structure/closet/crate/coffin, +/obj/machinery/door/window/eastright{ + dir = 8; + name = "Coffin Storage"; req_access_txt = "22" }, /turf/open/floor/plasteel/dark, /area/chapel/main) +"aNY" = ( +/obj/machinery/door/poddoor{ + id = "chapelgun"; + name = "Chapel Launcher Door" + }, +/obj/structure/fans/tiny, +/turf/open/floor/plating, +/area/chapel/main) "aNZ" = ( /obj/structure/chair, /obj/effect/turf_decal/tile/red{ @@ -17706,7 +17682,12 @@ }, /area/chapel/main) "aPo" = ( -/obj/effect/spawner/structure/window/reinforced/tinted, +/obj/structure/closet/crate/coffin, +/obj/machinery/door/window/eastleft{ + dir = 8; + name = "Coffin Storage"; + req_access_txt = "22" + }, /turf/open/floor/plasteel/dark, /area/chapel/main) "aPp" = ( @@ -18116,7 +18097,7 @@ pixel_x = -5; pixel_y = 2 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/carpet, /area/chapel/main) "aQx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -18129,24 +18110,17 @@ }, /area/chapel/main) "aQz" = ( -/obj/item/radio/intercom{ - broadcasting = 1; - frequency = 1480; - name = "Confessional Intercom"; - pixel_x = 25 +/obj/structure/closet/crate/coffin, +/obj/structure/window/reinforced{ + dir = 8 }, -/obj/structure/chair/wood/normal{ - dir = 1 - }, -/obj/machinery/light/floor, -/obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plasteel/dark, /area/chapel/main) "aQA" = ( -/obj/machinery/door/morgue{ - name = "Confession Booth" +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/wood/wood_large, /area/chapel/main) "aQB" = ( /obj/effect/turf_decal/tile/red{ @@ -19178,7 +19152,6 @@ /obj/machinery/light{ dir = 4 }, -/obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plasteel/dark, /area/chapel/main) "aTk" = ( @@ -23926,14 +23899,15 @@ /turf/closed/wall, /area/maintenance/disposal) "bfb" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 +/obj/machinery/computer/pod/old{ + density = 0; + icon = 'icons/obj/airlock_machines.dmi'; + icon_state = "airlock_control_standby"; + id = "chapelgun"; + name = "Mass Driver Controller"; + pixel_x = 24 }, -/obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating, +/turf/open/floor/wood/wood_large, /area/chapel/main) "bfc" = ( /obj/machinery/power/apc{ @@ -49372,11 +49346,10 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat_interior) "csT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/chair/wood/normal{ - dir = 4 - }, -/turf/open/floor/carpet, +/obj/structure/table/glass, +/obj/item/storage/book/bible, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/wood/wood_large, /area/chapel/main) "csU" = ( /obj/structure/transit_tube/station/reverse, @@ -52008,10 +51981,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cBZ" = ( -/obj/structure/table/wood, -/obj/item/storage/crayons{ - pixel_y = 8 +/obj/structure/disposalpipe/trunk{ + dir = 8 }, +/obj/machinery/disposal/bin, /turf/open/floor/carpet, /area/chapel/office) "cCb" = ( @@ -53481,12 +53454,9 @@ /turf/open/floor/plasteel/dark, /area/hallway/primary/central) "dmX" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Chapel Office"; - req_access_txt = "22" - }, -/turf/open/floor/plasteel/dark, -/area/chapel/office) +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/chapel/main) "dnW" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 @@ -56392,6 +56362,17 @@ /obj/machinery/atmospherics/pipe/simple/dark/visible, /turf/open/space/basic, /area/space/nearstation) +"kdF" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/closet/crate/coffin, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "kdO" = ( /obj/machinery/pool/controller, /turf/open/floor/plasteel/yellowsiding, @@ -56791,10 +56772,8 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "kOL" = ( -/obj/item/kirbyplants{ - icon_state = "plant-18" - }, -/turf/open/floor/plasteel/dark, +/obj/structure/table/glass, +/turf/open/floor/wood/wood_large, /area/chapel/main) "kPd" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -57442,13 +57421,10 @@ /turf/open/floor/wood, /area/crew_quarters/theatre) "mzv" = ( -/obj/structure/chair/wood/wings{ - dir = 8 +/obj/machinery/door/morgue{ + name = "Confession Booth" }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/wood/wood_large, /area/chapel/main) "mzB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -57661,9 +57637,9 @@ /area/crew_quarters/locker) "mZx" = ( /obj/structure/table/glass, -/obj/item/storage/fancy/candle_box{ - pixel_x = 5; - pixel_y = 4 +/obj/item/storage/box/matches{ + pixel_x = 4; + pixel_y = -8 }, /turf/open/floor/wood/wood_large, /area/chapel/main) @@ -58942,7 +58918,7 @@ pixel_x = 5; pixel_y = 2 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/carpet, /area/chapel/main) "pYQ" = ( /obj/structure/reagent_dispensers/watertank, @@ -59039,6 +59015,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "qkn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/light{ dir = 8 }, @@ -59133,6 +59110,11 @@ /obj/structure/lattice, /turf/closed/wall/r_wall, /area/crew_quarters/heads/captain) +"qCR" = ( +/obj/structure/musician/piano, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "qEB" = ( /obj/machinery/hydroponics/soil{ pixel_y = 8 @@ -59266,6 +59248,13 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/lobby) +"qUh" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Chapel Office"; + req_access_txt = "22" + }, +/turf/open/floor/plasteel/dark, +/area/chapel/office) "qVP" = ( /obj/effect/spawner/structure/window, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -60576,8 +60565,9 @@ /turf/open/floor/wood, /area/maintenance/bar) "tSm" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/structure/musician/piano, +/obj/item/kirbyplants{ + icon_state = "plant-18" + }, /turf/open/floor/plasteel/dark, /area/chapel/main) "tSo" = ( @@ -61314,13 +61304,18 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness) "vqE" = ( -/obj/structure/closet/crate/coffin, -/obj/structure/window/reinforced{ - dir = 4 +/obj/structure/chair/wood/normal{ + dir = 1 + }, +/obj/machinery/light/floor, +/obj/item/radio/intercom{ + broadcasting = 1; + frequency = 1480; + name = "Confessional Intercom"; + pixel_x = -25 }, -/obj/structure/window/reinforced, /turf/open/floor/plasteel/dark, -/area/chapel/office) +/area/chapel/main) "vqP" = ( /obj/structure/bed/dogbed{ desc = "A comfy-looking pet bed. You can even strap your pet in, in case the gravity turns off."; @@ -62355,11 +62350,12 @@ /turf/open/floor/carpet, /area/library) "xES" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/chair/wood/normal{ - dir = 4 +/obj/structure/table/glass, +/obj/item/storage/fancy/candle_box{ + pixel_x = 5; + pixel_y = 4 }, -/turf/open/floor/carpet, +/turf/open/floor/wood/wood_large, /area/chapel/main) "xFM" = ( /obj/item/clothing/gloves/color/rainbow, @@ -62450,6 +62446,12 @@ /obj/item/instrument/trombone, /turf/open/floor/wood, /area/crew_quarters/theatre) +"xRa" = ( +/obj/item/kirbyplants{ + icon_state = "plant-20" + }, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "xSW" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -108514,7 +108516,7 @@ aJT aLc aFw tSm -kOL +aFz aFz aRR aTe @@ -108769,8 +108771,8 @@ aGY aII aJW aMX -aFw -mzv +qUh +aFz aPl aQv aPl @@ -108779,7 +108781,7 @@ aUI aTg aRS aZf -aFz +xRa bbF aYV aXq @@ -109023,10 +109025,10 @@ aCM aEg aFw aHi -aHi -aJV -aMX -dmX +aFw +aFw +aFw +aFw aFz aPk aQu @@ -109282,10 +109284,10 @@ aFw aHl aID vqE -aFw aCR +qCR aFz -aFz +aRS aQw aRS aRS @@ -109535,14 +109537,14 @@ aAz asB aCO aEh -aNW -aHk -aNW -aNW -qkn +aCR +aCR +aCR +mzv +aCR aML aFz -aFz +aRS pXG cdl aRS @@ -109793,10 +109795,10 @@ asB aCQ aEk fsQ -aHn -csT -csT fsQ +fsQ +fsQ +qkn aLr aFB aPn @@ -110050,11 +110052,11 @@ asB aCP aMM aFA -aHm -xES -xES aMM aMM +aMM +aMM +aEj aEj aPm aQx @@ -110064,7 +110066,7 @@ aUJ aTh aXz aZg -aFz +xRa bbF aYV bdv @@ -110304,18 +110306,18 @@ ayj azx aAB asB -aCR aEm -aCR aNW -aNW -aNW -aNW -aCR -aNY -aCR aQA -aCR +aNW +aNW +aNW +aNW +aFz +aFz +aFz +aFz +aFz aTj aFz aVV @@ -110561,14 +110563,14 @@ asB asB asB asB -aCR +aHk +aNW bfb -aCR -aHo -aIE aKe -mZx -aCR +aKe +aKe +aNW +kdF aNX aPo aQz @@ -110821,10 +110823,10 @@ atS aCR aEn aCR -aHq -aHq -aHq -aHq +aKe +aKe +aKe +aNW aCR aCR aCR @@ -111074,14 +111076,14 @@ atS aoV aoV aaf -atS -aaf -aaa -aaf -aaa -aaa -aaa -aaa +gXs +aHm +aHn +aCR +aNW +aNW +aNW +aNW aMZ aNZ aPp @@ -111331,14 +111333,14 @@ aaH aoV aoV aaf -atS -aaf -aaa -aaf -aaa -aaa -aaa -aaf +gXs +aHm +aJV +aCR +csT +kOL +mZx +xES aMZ aOb aPr @@ -111588,14 +111590,14 @@ aaH aoV aoV aoV -atS -aaf -aaa -aaf -aaa -aaa -aaa -aaf +gXs +aHm +aNY +aCR +dmX +dmX +dmX +dmX aMZ aOa aVX @@ -111845,7 +111847,7 @@ atS aoV aoV aoV -atS +gXs aaf aaa aaf From b13c2de2185bd1cd6d67bf9c105a99f885ca486c Mon Sep 17 00:00:00 2001 From: TripleShades Date: Mon, 25 Jan 2021 11:48:13 -0800 Subject: [PATCH 32/96] fuck --- _maps/map_files/BoxStation/BoxStation.dmm | 32 +++++++++++++++++++---- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index b2af6bd093..a54f6e8cdb 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -49347,8 +49347,10 @@ /area/ai_monitored/turret_protected/aisat_interior) "csT" = ( /obj/structure/table/glass, -/obj/item/storage/book/bible, /obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/item/storage/book/bible{ + pixel_y = -1 + }, /turf/open/floor/wood/wood_large, /area/chapel/main) "csU" = ( @@ -53487,6 +53489,14 @@ icon_state = "carpetsymbol" }, /area/crew_quarters/theatre) +"dsJ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/table/glass, +/obj/item/toy/figure/chaplain{ + pixel_y = -9 + }, +/turf/open/floor/wood/wood_large, +/area/chapel/main) "dtx" = ( /obj/structure/cable{ icon_state = "1-2" @@ -59537,6 +59547,14 @@ }, /turf/open/floor/plasteel, /area/security/prison) +"rxF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/table/glass, +/obj/item/storage/book/bible{ + pixel_y = 17 + }, +/turf/open/floor/wood/wood_large, +/area/chapel/main) "ryr" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -62355,6 +62373,10 @@ pixel_x = 5; pixel_y = 4 }, +/obj/item/storage/fancy/candle_box{ + pixel_x = 1; + pixel_y = 4 + }, /turf/open/floor/wood/wood_large, /area/chapel/main) "xFM" = ( @@ -109795,8 +109817,8 @@ asB aCQ aEk fsQ -fsQ -fsQ +dsJ +rxF fsQ qkn aLr @@ -111079,7 +111101,7 @@ aaf gXs aHm aHn -aCR +dmX aNW aNW aNW @@ -111336,7 +111358,7 @@ aaf gXs aHm aJV -aCR +dmX csT kOL mZx From 93ff29a579774c0fcd7784c0e81af6aec4747dda Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Tue, 26 Jan 2021 00:00:39 -0700 Subject: [PATCH 33/96] Update pinpointer.dm --- code/game/objects/items/pinpointer.dm | 36 +++++++++++++++++++++------ 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/code/game/objects/items/pinpointer.dm b/code/game/objects/items/pinpointer.dm index 81bae3d54b..29e02e17d0 100644 --- a/code/game/objects/items/pinpointer.dm +++ b/code/game/objects/items/pinpointer.dm @@ -19,6 +19,8 @@ var/minimum_range = 0 //at what range the pinpointer declares you to be at your destination var/ignore_suit_sensor_level = FALSE // Do we find people even if their suit sensors are turned off var/alert = FALSE // TRUE to display things more seriously + /// resets target on toggle + var/resets_target = TRUE /obj/item/pinpointer/Initialize() . = ..() @@ -27,7 +29,7 @@ /obj/item/pinpointer/Destroy() STOP_PROCESSING(SSfastprocess, src) GLOB.pinpointer_list -= src - target = null + unset_target() return ..() /obj/item/pinpointer/DoRevenantThrowEffects(atom/target) @@ -41,7 +43,8 @@ if(active) START_PROCESSING(SSfastprocess, src) else - target = null + if(resets_target) + unset_target() STOP_PROCESSING(SSfastprocess, src) update_icon() @@ -54,6 +57,18 @@ /obj/item/pinpointer/proc/scan_for_target() return +/obj/item/pinpointer/proc/set_target(atom/movable/newtarget) + if(target) + unset_target() + target = newtarget + RegisterSignal(target, COMSIG_PARENT_QDELETING, .proc/unset_target) + +/obj/item/pinpoiter/proc/unset_target() + if(!target) + return + UnregisterSignal(target, COMSIG_PARENT_QDELETING) + target = null + /obj/item/pinpointer/update_overlays() . = ..() if(!active) @@ -105,7 +120,8 @@ active = FALSE user.visible_message("[user] deactivates [user.p_their()] pinpointer.", "You deactivate your pinpointer.") playsound(src, 'sound/items/screwdriver2.ogg', 50, 1) - target = null //Restarting the pinpointer forces a target reset + if(resets_target) + unset_target() //Restarting the pinpointer forces a target reset STOP_PROCESSING(SSfastprocess, src) update_icon() return @@ -141,7 +157,7 @@ if(!A || QDELETED(src) || !user || !user.is_holding(src) || user.incapacitated()) return - target = names[A] + set_target(names[A]) active = TRUE user.visible_message("[user] activates [user.p_their()] pinpointer.", "You activate your pinpointer.") playsound(src, 'sound/items/screwdriver2.ogg', 50, 1) @@ -153,7 +169,7 @@ if(ishuman(target)) var/mob/living/carbon/human/H = target if(!trackable(H)) - target = null + unset_target() if(!target) //target can be set to null from above code, or elsewhere active = FALSE @@ -167,7 +183,7 @@ . = ..() /obj/item/pinpointer/pair/scan_for_target() - target = other_pair + set_target(other_pair) /obj/item/pinpointer/pair/examine(mob/user) . = ..() @@ -199,7 +215,7 @@ shuttleport = SSshuttle.getShuttle("huntership") /obj/item/pinpointer/shuttle/scan_for_target() - target = shuttleport + set_target(shuttleport) /obj/item/pinpointer/shuttle/Destroy() shuttleport = null @@ -211,4 +227,8 @@ icon_state = "pinpointer_ian" /obj/item/pinpointer/ian/scan_for_target() - target = locate(/mob/living/simple_animal/pet/dog/corgi/Ian) in GLOB.mob_living_list + set_target(locate(/mob/living/simple_animal/pet/dog/corgi/Ian) in GLOB.mob_living_list) + +/obj/item/pinpointer/custom + resets_target = FALSE + From 0a5ad34fd609d179134f819eaebf8a2a557b06db Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Tue, 26 Jan 2021 07:26:59 -0700 Subject: [PATCH 34/96] Update pinpointer.dm --- code/game/objects/items/pinpointer.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/pinpointer.dm b/code/game/objects/items/pinpointer.dm index 29e02e17d0..e47b2bb0d8 100644 --- a/code/game/objects/items/pinpointer.dm +++ b/code/game/objects/items/pinpointer.dm @@ -63,7 +63,7 @@ target = newtarget RegisterSignal(target, COMSIG_PARENT_QDELETING, .proc/unset_target) -/obj/item/pinpoiter/proc/unset_target() +/obj/item/pinpointer/proc/unset_target() if(!target) return UnregisterSignal(target, COMSIG_PARENT_QDELETING) From 7b2a6955cc0674f5343876e002e72580e0ef378d Mon Sep 17 00:00:00 2001 From: zerothebigboy Date: Tue, 26 Jan 2021 13:13:09 -0500 Subject: [PATCH 35/96] please --- code/modules/clothing/masks/miscellaneous.dm | 9 +++++++++ modular_citadel/code/modules/client/loadout/mask.dm | 10 ++++++++++ 2 files changed, 19 insertions(+) diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm index 5dd35788f1..92d17eaa0a 100644 --- a/code/modules/clothing/masks/miscellaneous.dm +++ b/code/modules/clothing/masks/miscellaneous.dm @@ -33,6 +33,15 @@ actions_types = list(/datum/action/item_action/adjust) mutantrace_variation = STYLE_MUZZLE +/obj/item/clothing/mask/surgical/aesthetic + name = "aesthetic sterile mask" + desc = "A sterile mask designed to help prevent the spread of diseases. This one doesn't seem like it does a whole lot, somehow." + flags_inv = HIDEFACE + flags_cover = null + visor_flags_inv = null + visor_flags_cover = null + armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) + /obj/item/clothing/mask/surgical/attack_self(mob/user) adjustmask(user) diff --git a/modular_citadel/code/modules/client/loadout/mask.dm b/modular_citadel/code/modules/client/loadout/mask.dm index 9468c9303d..7bd5a8726d 100644 --- a/modular_citadel/code/modules/client/loadout/mask.dm +++ b/modular_citadel/code/modules/client/loadout/mask.dm @@ -20,3 +20,13 @@ path = /obj/item/clothing/mask/gas cost = 2 restricted_roles = list("Chief Engineer", "Atmospheric Technician", "Station Engineer") //*shrug + +/datum/gear/mask/sterile + name = "Aesthetic sterile mask" + path = /obj/item/clothing/mask/surgical/aesthetic + cost = 2 + +/datum/gear/mask/paper + name = "Paper mask" + path = /obj/item/clothing/mask/paper + cost = 2 \ No newline at end of file From 0bc8c9383c42d260086c2259c59c3062bb7ae0ef Mon Sep 17 00:00:00 2001 From: zeroisthebiggay <43571008+zeroisthebiggay@users.noreply.github.com> Date: Tue, 26 Jan 2021 13:17:44 -0500 Subject: [PATCH 36/96] Update miscellaneous.dm --- code/modules/clothing/masks/miscellaneous.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm index 92d17eaa0a..fc4185f207 100644 --- a/code/modules/clothing/masks/miscellaneous.dm +++ b/code/modules/clothing/masks/miscellaneous.dm @@ -40,6 +40,7 @@ flags_cover = null visor_flags_inv = null visor_flags_cover = null + permeability_coefficient = 1 armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) /obj/item/clothing/mask/surgical/attack_self(mob/user) From 4b6f0d3ffa7a3fdcd48f426d1a3a9498a1c592b8 Mon Sep 17 00:00:00 2001 From: zeroisthebiggay <43571008+zeroisthebiggay@users.noreply.github.com> Date: Tue, 26 Jan 2021 14:11:00 -0500 Subject: [PATCH 37/96] Update mask.dm --- modular_citadel/code/modules/client/loadout/mask.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modular_citadel/code/modules/client/loadout/mask.dm b/modular_citadel/code/modules/client/loadout/mask.dm index 7bd5a8726d..576b29cddc 100644 --- a/modular_citadel/code/modules/client/loadout/mask.dm +++ b/modular_citadel/code/modules/client/loadout/mask.dm @@ -29,4 +29,5 @@ /datum/gear/mask/paper name = "Paper mask" path = /obj/item/clothing/mask/paper - cost = 2 \ No newline at end of file + cost = 2 + From 4a8ccbe031125e68bac5c8bfbe08cb3233474763 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Wed, 27 Jan 2021 00:16:29 +0000 Subject: [PATCH 38/96] Automatic changelog compile [ci skip] --- html/changelog.html | 53 ++++++++++++++++++++++ html/changelogs/.all_changelog.yml | 45 ++++++++++++++++++ html/changelogs/AutoChangeLog-pr-14059.yml | 5 -- html/changelogs/AutoChangeLog-pr-14102.yml | 6 --- html/changelogs/AutoChangeLog-pr-14105.yml | 6 --- html/changelogs/AutoChangeLog-pr-14111.yml | 4 -- html/changelogs/AutoChangeLog-pr-14114.yml | 4 -- html/changelogs/AutoChangeLog-pr-14116.yml | 4 -- html/changelogs/AutoChangeLog-pr-14117.yml | 4 -- html/changelogs/AutoChangeLog-pr-14118.yml | 6 --- html/changelogs/AutoChangeLog-pr-14127.yml | 4 -- html/changelogs/AutoChangeLog-pr-14131.yml | 4 -- html/changelogs/AutoChangeLog-pr-14133.yml | 5 -- html/changelogs/AutoChangeLog-pr-14134.yml | 4 -- html/changelogs/AutoChangeLog-pr-14135.yml | 4 -- html/changelogs/AutoChangeLog-pr-14136.yml | 5 -- html/changelogs/AutoChangeLog-pr-14137.yml | 4 -- 17 files changed, 98 insertions(+), 69 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-14059.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14102.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14105.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14111.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14114.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14116.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14117.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14118.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14127.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14131.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14133.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14134.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14135.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14136.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14137.yml diff --git a/html/changelog.html b/html/changelog.html index b18d4f45aa..fe21a152aa 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -50,6 +50,59 @@ -->
+

27 January 2021

+

ArcaneMusic, ported by Hatterhat updated:

+
    +
  • Strike a hydroponics tray with a fully-charged floral somatoray to lock in a mutation.
  • +
  • Floral somatorays now have the ability to force a mutation in a plant. This should drain the cell in a single shot, but we'll see.
  • +
  • Somatorays now take uranium to craft instead of radium.
  • +
+

Arturlang updated:

+
    +
  • Actually adds a right click give option
  • +
  • Revenants can now clickdrag to throw stuff at people, with some items doing various things at the same time.
  • +
+

DeltaFire15 updated:

+
    +
  • The woundmending rite no longer causes runtimes.
  • +
  • Ratvarian borgs can now use their tier-0 spells.
  • +
  • Ratvarian borgs can always use their assigned spells, if there is enough power.
  • +
  • The heretic antag panel now shows their sacrifices & current sacrifice targets.
  • +
  • The heretic roundend report now shows their sacrifices and nonsacrificed targets.
  • +
  • Living hearts can no longer select the same target as another living heart, removing a certain problem.
  • +
+

Hatterhat updated:

+
    +
  • Department budget cards have been readded. TO THE CODE. NOT LOCKERS.
  • +
  • Also budget cards now look more like every other ID - see tgstation#55001.
  • +
  • One of the contractor tablet's payouts has been raised from a small payout to a medium payout.
  • +
  • The free golem ship's GPSes no longer start on. They were never meant to, but they did.
  • +
  • Headsets can't be found on most legion corpses now.
  • +
  • The flash on the assistant corpse is gone, too.
  • +
+

MrJWhit updated:

+
    +
  • Remaps some air alarms for sanity.
  • +
+

SandPoot updated:

+
    +
  • The drop circuit can no longer drop things that are not inside it.
  • +
+

raspy-on-osu updated:

+
    +
  • bespoke ventcrawling element not detaching due to malformed call
  • +
+

shellspeed1 updated:

+
    +
  • Floorbots had had a software update, preventing them from dogpiling on their target as easily as they did before.
  • +
  • Floorbots will now play a small chime when stacked on top of each other to indicate that they're moving apart.
  • +
+

timothyteakettle updated:

+
    +
  • blobs can use the 'me' verb
  • +
  • adminhelps and pms only sanitize once instead of twice
  • +
+

25 January 2021

MrJWhit updated: