From 785c50a552d5b544c2bd4c2d9658c8fba6eae430 Mon Sep 17 00:00:00 2001 From: CHOMPStation2StaffMirrorBot <94713762+CHOMPStation2StaffMirrorBot@users.noreply.github.com> Date: Wed, 1 Jan 2025 01:00:19 -0700 Subject: [PATCH] [MIRROR] Mobs will no longer be despawned if they aren't inside a cryopod (#9754) Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com> --- code/game/machinery/cryopod.dm | 13 ++++++++----- code/modules/mob/living/carbon/human/human.dm | 2 -- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index 38deb3e733..33f17f16c7 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -340,6 +340,9 @@ //Lifted from Unity stasis.dm and refactored. ~Zuhayr /obj/machinery/cryopod/process() if(occupant) + if(occupant.loc != src) + go_out(TRUE) + return //Allow a ten minute gap between entering the pod and actually despawning. if(world.time - time_entered < time_till_despawn) return @@ -663,12 +666,12 @@ for(var/obj/machinery/gateway/G in range(1,src)) G.icon_state = "on" -/obj/machinery/cryopod/robot/door/gateway/go_out() - ..() +/obj/machinery/cryopod/robot/door/gateway/go_out(var/skip_move = FALSE) + ..(skip_move) for(var/obj/machinery/gateway/G in range(1,src)) G.icon_state = "off" -/obj/machinery/cryopod/proc/go_out() +/obj/machinery/cryopod/proc/go_out(var/skip_move = FALSE) if(!occupant) return @@ -676,8 +679,8 @@ if(occupant.client) occupant.client.eye = occupant.client.mob occupant.client.perspective = MOB_PERSPECTIVE - - occupant.forceMove(get_turf(src)) + if(!skip_move) + occupant.forceMove(get_turf(src)) if(ishuman(occupant) && applies_stasis) var/mob/living/carbon/human/H = occupant H.Stasis(0) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 7ac0358701..51c02a26e1 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1824,8 +1824,6 @@ rig.visor.deactivate() to_chat(src, span_warning("\The [rig]'s visor has shuddenly deactivated!")) - ..() - /mob/living/carbon/human/get_mob_riding_slots() return list(back, head, wear_suit)