diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 52702868f7..cefc471d08 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -58,8 +58,13 @@ "You climb out of [src]!") open_machine() +/obj/machinery/sleeper/Exited(atom/movable/user) + if (!state_open && user == occupant) + container_resist(user) + /obj/machinery/sleeper/relaymove(mob/user) - container_resist(user) + if (!state_open) + container_resist(user) /obj/machinery/sleeper/open_machine() if(!state_open && !panel_open) diff --git a/code/game/objects/items/devices/chameleonproj.dm b/code/game/objects/items/devices/chameleonproj.dm index a07d8d8d60..c7865ac576 100644 --- a/code/game/objects/items/devices/chameleonproj.dm +++ b/code/game/objects/items/devices/chameleonproj.dm @@ -28,7 +28,10 @@ disrupt() /obj/item/device/chameleon/attack_self(mob/user) - toggle(user) + if (isturf(user.loc) || istype(user.loc, /obj/structure) || active_dummy) + toggle(user) + else + to_chat(user, "You can't use [src] while inside something.") /obj/item/device/chameleon/afterattack(atom/target, mob/user , proximity) if(!proximity)