diff --git a/code/modules/spacepods/spacepod.dm b/code/modules/spacepods/spacepod.dm
index 47912c1c90f..a962c0df000 100644
--- a/code/modules/spacepods/spacepod.dm
+++ b/code/modules/spacepods/spacepod.dm
@@ -63,7 +63,7 @@
"pod_black" = "#3B8FE5", \
"pod_industrial" = "#CCCC00")
- var/unlocked = 1
+ var/unlocked = TRUE
var/move_delay = 2
var/next_move = 0
@@ -378,12 +378,17 @@
"You start drilling through the [src]'s lock!")
if(do_after(user, 100 * W.toolspeed, target = src))
QDEL_NULL(equipment_system.lock_system)
+ unlocked = TRUE
user.visible_message(user, "[user] has destroyed the [src]'s lock!",
"You destroy the [src]'s lock!")
else
user.visible_message(user, "[user] fails to break through the [src]'s lock!",
"You were unable to break through the [src]'s lock!")
return
+ if(L.on && unlocked == FALSE) //The buster is on, we don't have a lock system, and the pod is still somehow locked, unlocking.
+ unlocked = TRUE
+ user.visible_message(user, "[user] has destroyed the [src]'s malfunction that locks the doors!",
+ "You destroy the [src]'s malfunction that locks the doors!")
to_chat(user, "Turn the [L] on first.")
return
@@ -825,11 +830,15 @@ obj/spacepod/proc/add_equipment(mob/user, var/obj/item/device/spacepod_equipment
return
if(usr in passengers && usr != src.pilot)
- to_chat(usr, "You can't reach the controls from your chair")
+ to_chat(usr, "You can't reach the controls from your chair.")
return
- unlocked = !unlocked
- to_chat(usr, "You [unlocked ? "unlock" : "lock"] the doors.")
+ if(!equipment_system.lock_system)
+ to_chat(usr, "There is no locking system you could lock.")
+ unlocked = TRUE //Should never be true without a lock, but if it somehow happens, that will force an unlock.
+ else
+ unlocked = !unlocked
+ to_chat(usr, "You [unlocked ? "unlock" : "lock"] the doors.")
/obj/spacepod/verb/toggleDoors()