diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm
index 1afec0c473d..2fbe23b0e92 100644
--- a/code/game/machinery/doors/airlock.dm
+++ b/code/game/machinery/doors/airlock.dm
@@ -152,9 +152,6 @@ var/list/airlock_overlays = list()
return
..()
-/obj/machinery/door/airlock/bumpopen(mob/living/simple_animal/user)
- ..()
-
/obj/machinery/door/airlock/proc/isElectrified()
if(src.secondsElectrified != 0)
return 1
diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm
index 681c114b90c..e3705a2df0d 100644
--- a/code/game/machinery/doors/door.dm
+++ b/code/game/machinery/doors/door.dm
@@ -61,6 +61,10 @@
if(istype(AM, /obj/mecha))
var/obj/mecha/mecha = AM
if(density)
+ if(mecha.occupant)
+ if(world.time - mecha.occupant.last_bumped <= 10)
+ return
+ mecha.occupant.last_bumped = world.time
if(mecha.occupant && (src.allowed(mecha.occupant) || src.check_access_list(mecha.operation_req_access) || emergency == 1))
open()
else
diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm
index 7947a228a35..d9cd0e32560 100644
--- a/code/game/objects/items/weapons/storage/storage.dm
+++ b/code/game/objects/items/weapons/storage/storage.dm
@@ -368,6 +368,10 @@
//This proc is called when you want to place an item into the storage item.
/obj/item/weapon/storage/attackby(obj/item/W, mob/user, params)
..()
+ if(istype(W, /obj/item/weapon/hand_labeler))
+ var/obj/item/weapon/hand_labeler/labeler = W
+ if(labeler.mode)
+ return 0
. = 1 //no afterattack
if(isrobot(user))
return //Robots can't interact with storage items.
diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm
index e142ca61091..8c70edb0579 100644
--- a/code/game/objects/structures/morgue.dm
+++ b/code/game/objects/structures/morgue.dm
@@ -80,6 +80,10 @@
/obj/structure/bodycontainer/container_resist()
open()
+/obj/structure/bodycontainer/relay_container_resist(mob/living/user, obj/O)
+ user << "You slam yourself into the side of [O]."
+ container_resist()
+
/obj/structure/bodycontainer/proc/open()
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
var/turf/T = get_step(src, opendir)
diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm
index 58155f71804..6bdd139484c 100644
--- a/code/modules/recycling/sortingmachinery.dm
+++ b/code/modules/recycling/sortingmachinery.dm
@@ -54,7 +54,7 @@
return
user << "You lean on the back of [O] and start pushing to rip the wrapping around it."
if(do_after(user, 50, target = O))
- if(!user || user.stat != CONSCIOUS || user.loc != src || O.loc != src )
+ if(!user || user.stat != CONSCIOUS || user.loc != O || O.loc != src )
return
user << "You successfully removed [O]'s wrapping !"
O.loc = loc