diff --git a/code/__defines/_planes+layers.dm b/code/__defines/_planes+layers.dm index 60557d1dd7..3bee841881 100644 --- a/code/__defines/_planes+layers.dm +++ b/code/__defines/_planes+layers.dm @@ -68,6 +68,7 @@ What is the naming convention for planes or layers? // Obj planes #define OBJ_PLANE -35 + #define STAIRS_LAYER 2.5 // Layer for stairs #define HIDING_LAYER 2.6 // Layer at which mobs hide to be under things like tables #define DOOR_OPEN_LAYER 2.7 // Under all objects if opened. 2.7 due to tables being at 2.6 #define TABLE_LAYER 2.8 // Just under stuff that wants to be slightly below common objects. diff --git a/code/modules/food/kitchen/gibber.dm b/code/modules/food/kitchen/gibber.dm index 3863dbddf7..db1c13ebde 100644 --- a/code/modules/food/kitchen/gibber.dm +++ b/code/modules/food/kitchen/gibber.dm @@ -217,13 +217,13 @@ spawn(gib_time) - src.operating = 0 - src.occupant.gib() - qdel(src.occupant) + operating = 0 + occupant.gib() + occupant = null playsound(src.loc, 'sound/effects/splat.ogg', 50, 1) operating = 0 - for (var/obj/item/thing in contents) + for (var/obj/thing in contents) // There's a chance that the gibber will fail to destroy some evidence. if(istype(thing,/obj/item/organ) && prob(80)) qdel(thing) diff --git a/code/modules/multiz/movement.dm b/code/modules/multiz/movement.dm index 49303cb0f5..c3eae7b359 100644 --- a/code/modules/multiz/movement.dm +++ b/code/modules/multiz/movement.dm @@ -336,6 +336,10 @@ // Detect if we made a silent landing. if(locate(/obj/structure/stairs) in landing) + if(isliving(src)) + var/mob/living/L = src + if(L.pulling) + L.pulling.forceMove(landing) return 1 else var/atom/A = find_fall_target(oldloc, landing) diff --git a/code/modules/multiz/structures.dm b/code/modules/multiz/structures.dm index e74812de2a..02277740c4 100644 --- a/code/modules/multiz/structures.dm +++ b/code/modules/multiz/structures.dm @@ -131,6 +131,7 @@ opacity = 0 anchored = 1 flags = ON_BORDER + layer = STAIRS_LAYER /obj/structure/stairs/Initialize() . = ..()