diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index ad009429e85..97c1293ad17 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -733,7 +733,6 @@ /area/security/execution/transfer) "acc" = ( /obj/structure/bed, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/security/execution/transfer) "acd" = ( @@ -14061,7 +14060,6 @@ /area/chapel/office) "aIB" = ( /obj/structure/bodycontainer/crematorium, -/obj/effect/landmark/revenantspawn, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/chapel/office) @@ -15738,7 +15736,6 @@ /area/hallway/primary/port) "aMW" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/chapel/office) "aMX" = ( @@ -23823,7 +23820,6 @@ /area/security/checkpoint/medical) "biz" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/medical/morgue) "biA" = ( @@ -26697,7 +26693,6 @@ }, /obj/item/soap/deluxe, /obj/item/bikehorn/rubberducky, -/obj/effect/landmark/revenantspawn, /obj/structure/curtain, /turf/open/floor/plasteel/freezer, /area/crew_quarters/heads/captain) @@ -39437,7 +39432,6 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bSZ" = ( -/obj/effect/landmark/revenantspawn, /turf/open/floor/engine, /area/science/xenobiology) "bTa" = ( @@ -40746,7 +40740,6 @@ "bWk" = ( /obj/structure/bed, /obj/item/bedsheet, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/white, /area/medical/virology) "bWl" = ( @@ -41115,7 +41108,6 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bXe" = ( -/obj/effect/landmark/revenantspawn, /mob/living/simple_animal/slime, /turf/open/floor/engine, /area/science/xenobiology) diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index 0c75e2e2332..9c25172b437 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -21995,7 +21995,6 @@ "aUv" = ( /obj/structure/bed, /obj/item/bedsheet/brown, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/red/side{ dir = 8 }, @@ -22033,7 +22032,6 @@ /obj/structure/bed, /obj/item/bedsheet/brown, /obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/red/side{ dir = 8 }, @@ -46466,7 +46464,6 @@ /obj/machinery/light/small{ dir = 8 }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -62931,7 +62928,6 @@ }, /area/library) "cyd" = ( -/obj/effect/landmark/revenantspawn, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 }, @@ -81522,7 +81518,6 @@ /obj/structure/chair/office/dark{ dir = 4 }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/wood, /area/maintenance/starboard/aft) "dkT" = ( @@ -84599,7 +84594,6 @@ "drv" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/vault{ dir = 5 }, @@ -85926,7 +85920,6 @@ }, /area/science/explab) "duz" = ( -/obj/effect/landmark/revenantspawn, /obj/effect/turf_decal/bot_white, /turf/open/floor/plasteel/vault{ dir = 8 @@ -90605,12 +90598,10 @@ /area/medical/morgue) "dDM" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating, /area/medical/morgue) "dDN" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -90618,7 +90609,6 @@ "dDO" = ( /obj/structure/bodycontainer/morgue, /obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -92420,7 +92410,6 @@ /area/medical/morgue) "dHG" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -93135,7 +93124,6 @@ "dIZ" = ( /obj/structure/bodycontainer/morgue, /obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating, /area/medical/morgue) "dJa" = ( @@ -99097,7 +99085,6 @@ "dVK" = ( /obj/effect/decal/remains/human, /obj/effect/decal/cleanable/blood/old, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/library/abandoned) "dVL" = ( @@ -99427,7 +99414,6 @@ }, /area/medical/virology) "dWz" = ( -/obj/effect/landmark/revenantspawn, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/medical/virology) diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 6c728cef02d..4d3978fc151 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -704,7 +704,6 @@ /obj/item/clothing/glasses/sunglasses/blindfold, /obj/item/clothing/mask/muzzle, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/landmark/revenantspawn, /obj/item/device/electropack, /turf/open/floor/plasteel/dark, /area/security/execution/education) @@ -1337,7 +1336,6 @@ /obj/item/clothing/suit/straight_jacket, /obj/item/clothing/glasses/sunglasses/blindfold, /obj/item/clothing/mask/muzzle, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/white, /area/security/prison) "adh" = ( @@ -1354,7 +1352,6 @@ /obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/white, /area/security/prison) "adj" = ( @@ -6149,7 +6146,6 @@ dir = 1 }, /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/security/brig) "ane" = ( @@ -15578,7 +15574,6 @@ /area/security/brig) "aGu" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/security/detectives_office) "aGv" = ( @@ -17507,7 +17502,6 @@ /turf/open/floor/plating, /area/engine/engineering) "aKy" = ( -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating, /area/engine/engineering) "aKz" = ( @@ -20697,7 +20691,6 @@ }, /area/construction/mining/aux_base) "aRG" = ( -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating, /area/maintenance/port/fore) "aRH" = ( @@ -24379,7 +24372,6 @@ /obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -30099,7 +30091,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/white, /area/crew_quarters/heads/captain/private) "bkL" = ( @@ -34613,7 +34604,6 @@ /turf/open/floor/plasteel, /area/engine/break_room) "btE" = ( -/obj/effect/landmark/revenantspawn, /obj/item/device/radio/intercom{ freerange = 0; frequency = 1459; @@ -41218,7 +41208,6 @@ dir = 4 }, /obj/machinery/light/small, -/obj/effect/landmark/revenantspawn, /obj/effect/decal/cleanable/blood/old, /obj/effect/decal/cleanable/blood/gibs/old, /turf/open/floor/plasteel/floorgrime, @@ -54118,7 +54107,6 @@ /turf/open/floor/plasteel, /area/science/research) "ciL" = ( -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating, /area/maintenance/starboard/aft) "ciM" = ( @@ -54387,7 +54375,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/medical/surgery) "cjx" = ( @@ -63594,7 +63581,6 @@ /area/medical/morgue) "cCf" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/medical/morgue) "cCg" = ( @@ -63626,7 +63612,6 @@ /obj/item/paper/guides/jobs/medical/morgue{ pixel_x = -4 }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/medical/morgue) "cCl" = ( @@ -63999,7 +63984,6 @@ dir = 8 }, /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/medical/morgue) "cCV" = ( @@ -65055,7 +65039,6 @@ pixel_x = -23 }, /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/medical/morgue) "cEV" = ( @@ -66735,7 +66718,6 @@ /obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/science/server) "cIc" = ( @@ -68705,7 +68687,6 @@ }, /obj/item/organ/heart, /obj/item/device/soulstone/anybody/chaplain, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/cult{ dir = 2 }, @@ -71520,7 +71501,6 @@ /turf/open/floor/engine, /area/science/xenobiology) "cSo" = ( -/obj/effect/landmark/revenantspawn, /turf/open/floor/engine, /area/science/xenobiology) "cSp" = ( diff --git a/_maps/map_files/OmegaStation/OmegaStation.dmm b/_maps/map_files/OmegaStation/OmegaStation.dmm index 90c99a2eff8..affa4187863 100644 --- a/_maps/map_files/OmegaStation/OmegaStation.dmm +++ b/_maps/map_files/OmegaStation/OmegaStation.dmm @@ -1731,7 +1731,6 @@ "adx" = ( /obj/item/clothing/suit/space/orange, /obj/item/clothing/head/helmet/space/orange, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating, /area/asteroid/nearstation) "adz" = ( @@ -6146,7 +6145,6 @@ /area/quartermaster/storage) "alG" = ( /obj/effect/decal/cleanable/blood/old, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating, /area/asteroid/nearstation) "alH" = ( @@ -7685,7 +7683,6 @@ pixel_x = -32 }, /obj/machinery/light/small, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/freezer, /area/hallway/primary/central) "aoD" = ( @@ -11062,7 +11059,6 @@ icon_state = "4-8" }, /obj/effect/decal/cleanable/blood/splatter, -/obj/effect/landmark/revenantspawn, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plating{ icon_state = "platingdmg2" @@ -22001,7 +21997,6 @@ /obj/structure/chair/office/dark{ dir = 4 }, -/obj/effect/landmark/revenantspawn, /obj/effect/decal/cleanable/blood/old, /turf/open/floor/wood, /area/maintenance/starboard/aft) @@ -22614,7 +22609,6 @@ /area/library) "aSe" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /obj/effect/decal/cleanable/cobweb, /turf/open/floor/plasteel/vault/side{ dir = 4 @@ -23527,7 +23521,6 @@ /area/library) "aUk" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /obj/item/device/radio/intercom{ name = "Station Intercom"; pixel_x = -26 @@ -23889,7 +23882,6 @@ /area/library) "aVc" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /obj/machinery/light{ dir = 8 }, @@ -24613,7 +24605,6 @@ /area/library) "aWH" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /obj/machinery/power/apc{ dir = 2; name = "Morgue APC"; @@ -26925,7 +26916,6 @@ }, /area/maintenance/port) "bbm" = ( -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/bar, /area/maintenance/port) "bbn" = ( @@ -28030,7 +28020,6 @@ /area/maintenance/port) "bdE" = ( /obj/structure/chair/stool/bar, -/obj/effect/landmark/revenantspawn, /turf/open/floor/wood{ icon_state = "wood-broken" }, @@ -28043,7 +28032,6 @@ /area/maintenance/port) "bdG" = ( /obj/structure/chair/stool/bar, -/obj/effect/landmark/revenantspawn, /turf/open/floor/wood{ icon_state = "wood-broken2" }, @@ -28089,7 +28077,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/vault{ dir = 5 }, @@ -29835,7 +29822,6 @@ /turf/open/floor/circuit/green, /area/science/xenobiology) "bhh" = ( -/obj/effect/landmark/revenantspawn, /turf/open/floor/circuit/green, /area/science/xenobiology) "bhi" = ( diff --git a/_maps/map_files/PubbyStation/PubbyStation.dmm b/_maps/map_files/PubbyStation/PubbyStation.dmm index accbc438e7a..b9513025970 100644 --- a/_maps/map_files/PubbyStation/PubbyStation.dmm +++ b/_maps/map_files/PubbyStation/PubbyStation.dmm @@ -1779,7 +1779,6 @@ /area/security/execution/transfer) "agw" = ( /obj/structure/bed, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/security/execution/transfer) "agx" = ( @@ -3567,7 +3566,6 @@ /area/maintenance/department/security/brig) "akx" = ( /obj/structure/bodycontainer/crematorium, -/obj/effect/landmark/revenantspawn, /obj/item/device/radio/intercom{ dir = 0; name = "Station Intercom (General)"; @@ -3695,7 +3693,6 @@ c_tag = "Brig Evidence Room"; dir = 8 }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/red/side{ dir = 4 }, @@ -4177,7 +4174,6 @@ dir = 1; layer = 2.9 }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/security/brig) "ama" = ( @@ -7162,7 +7158,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/circuit/green{ luminosity = 2 }, @@ -8332,7 +8327,6 @@ }, /obj/item/soap/deluxe, /obj/item/bikehorn/rubberducky, -/obj/effect/landmark/revenantspawn, /obj/structure/curtain, /turf/open/floor/plasteel/freezer, /area/crew_quarters/heads/captain) @@ -12366,7 +12360,6 @@ /area/maintenance/department/cargo) "aFk" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/security/detectives_office) "aFl" = ( @@ -16939,7 +16932,6 @@ /area/maintenance/disposal) "aQp" = ( /obj/structure/disposalpipe/segment, -/obj/effect/landmark/revenantspawn, /obj/effect/turf_decal/stripes/line{ dir = 8 }, @@ -25426,7 +25418,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating{ icon_state = "platingdmg1" }, @@ -25544,7 +25535,6 @@ /area/medical/medbay/zone3) "bld" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/medical/morgue) "ble" = ( @@ -26088,7 +26078,6 @@ /area/medical/medbay/zone3) "bmp" = ( /obj/structure/bodycontainer/morgue, -/obj/effect/landmark/revenantspawn, /obj/machinery/light/small{ brightness = 3; dir = 8 @@ -26399,7 +26388,6 @@ /area/science/xenobiology) "bnk" = ( /obj/effect/decal/cleanable/ash, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating, /area/maintenance/department/cargo) "bnl" = ( @@ -26786,7 +26774,6 @@ }, /area/science/xenobiology) "boi" = ( -/obj/effect/landmark/revenantspawn, /turf/open/floor/engine, /area/science/xenobiology) "boj" = ( @@ -33231,7 +33218,6 @@ }, /area/science/mixing) "bBU" = ( -/obj/effect/landmark/revenantspawn, /mob/living/simple_animal/slime, /turf/open/floor/engine, /area/science/xenobiology) @@ -35092,7 +35078,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/medical/exam_room) "bFX" = ( @@ -35101,7 +35086,6 @@ /obj/effect/decal/cleanable/blood/drip, /obj/item/restraints/handcuffs, /obj/item/clothing/mask/muzzle, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/dark, /area/medical/exam_room) "bFY" = ( @@ -35394,7 +35378,6 @@ "bGL" = ( /obj/structure/closet/masks, /obj/item/reagent_containers/food/snacks/deadmouse, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating, /area/maintenance/department/engine) "bGM" = ( @@ -36968,7 +36951,6 @@ "bKv" = ( /obj/item/bedsheet/medical, /obj/structure/bed, -/obj/effect/landmark/revenantspawn, /obj/structure/mirror{ pixel_x = -28 }, @@ -37054,7 +37036,6 @@ /area/medical/surgery) "bKF" = ( /obj/structure/table/optable, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/white, /area/medical/surgery) "bKG" = ( @@ -37410,7 +37391,6 @@ /turf/open/floor/engine, /area/maintenance/department/engine) "bLv" = ( -/obj/effect/landmark/revenantspawn, /turf/open/floor/engine, /area/maintenance/department/engine) "bLw" = ( @@ -37432,7 +37412,6 @@ /obj/item/bedsheet/medical, /obj/structure/bed, /obj/effect/decal/cleanable/cobweb, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/freezer, /area/medical/virology) "bLA" = ( @@ -37442,7 +37421,6 @@ "bLB" = ( /obj/structure/bed, /obj/item/bedsheet/medical, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plasteel/freezer, /area/medical/virology) "bLC" = ( @@ -46849,7 +46827,6 @@ /area/asteroid/nearstation/bomb_site) "ckL" = ( /obj/item/device/radio/beacon, -/obj/effect/landmark/revenantspawn, /turf/open/floor/plating/airless, /area/asteroid/nearstation/bomb_site) "ckM" = ( diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm index 717b6248393..5bcc446cfa9 100644 --- a/code/game/objects/structures/morgue.dm +++ b/code/game/objects/structures/morgue.dm @@ -13,6 +13,8 @@ * Parent class for morgue and crematorium * For overriding only */ +GLOBAL_LIST_EMPTY(bodycontainers) //Let them act as spawnpoints for revenants and other ghosties. + /obj/structure/bodycontainer icon = 'icons/obj/stationobjs.dmi' icon_state = "morgue1" @@ -26,7 +28,12 @@ var/message_cooldown var/breakout_time = 600 +/obj/structure/bodycontainer/Initialize() + . = ..() + GLOB.bodycontainers += src + /obj/structure/bodycontainer/Destroy() + GLOB.bodycontainers -= src open() if(connected) qdel(connected) diff --git a/code/modules/antagonists/revenant/revenant_spawn_event.dm b/code/modules/antagonists/revenant/revenant_spawn_event.dm index fb0bdfb6f93..1b1bdcbfc18 100644 --- a/code/modules/antagonists/revenant/revenant_spawn_event.dm +++ b/code/modules/antagonists/revenant/revenant_spawn_event.dm @@ -34,10 +34,16 @@ var/list/spawn_locs = list() - for(var/obj/effect/landmark/revenantspawn/L in GLOB.landmarks_list) - if(isturf(L.loc)) - spawn_locs += L.loc - if(!spawn_locs.len) //If we can't find any revenant spawns, try the carp spawns + for(var/mob/living/L in GLOB.dead_mob_list) //look for any dead bodies + var/turf/T = get_turf(L) + if(T && is_station_level(T.z)) + spawn_locs += T + if(!spawn_locs.len || spawn_locs.len < 15) //look for any morgue trays, crematoriums, ect if there weren't alot of dead bodies on the station to pick from + for(var/obj/structure/bodycontainer/bc in GLOB.bodycontainers) + var/turf/T = get_turf(bc) + if(T && is_station_level(T.z)) + spawn_locs += T + if(!spawn_locs.len) //If we can't find any valid spawnpoints, try the carp spawns for(var/obj/effect/landmark/carpspawn/L in GLOB.landmarks_list) if(isturf(L.loc)) spawn_locs += L.loc diff --git a/icons/effects/landmarks_static.dmi b/icons/effects/landmarks_static.dmi index c0007b30e8b..1a7617d3bb4 100644 Binary files a/icons/effects/landmarks_static.dmi and b/icons/effects/landmarks_static.dmi differ