From 0a7adc58b04849b28039b1366afebc6186e0e734 Mon Sep 17 00:00:00 2001 From: Sancronis <32908370+Sancronis@users.noreply.github.com> Date: Sun, 28 Mar 2021 12:11:03 +0100 Subject: [PATCH] Mobs are removed from closets first (#15658) --- code/game/objects/structures/crates_lockers/closets.dm | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 24344481129..741afa2738b 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -75,10 +75,14 @@ /obj/structure/closet/proc/dump_contents() var/turf/T = get_turf(src) - for(var/atom/movable/AM in src) - AM.forceMove(T) + for(var/mob/AM1 in src) //Does the same as below but removes the mobs first to avoid forcing players to step on items in the locker (e.g. soap) when opened. + AM1.forceMove(T) if(throwing) // you keep some momentum when getting out of a thrown closet - step(AM, dir) + step(AM1, dir) + for(var/atom/movable/AM2 in src) + AM2.forceMove(T) + if(throwing) // you keep some momentum when getting out of a thrown closet + step(AM2, dir) if(throwing) throwing.finalize(FALSE)