diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 8a6331b5d69..a4ac2ddb6cd 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -79,7 +79,7 @@ door_overlay.overlays += emissive_blocker(door_overlay.icon, door_overlay.icon_state, alpha = door_overlay.alpha) // If we don't do this the door doesn't block emissives and it looks weird. else if(!opened && has_closed_overlay) . += "[closed_door_sprite || icon_state]_closed" - + if(opened) return @@ -255,7 +255,6 @@ if(enable_door_overlay) animate_door(TRUE) update_appearance() - playsound(loc, close_sound, close_sound_volume, TRUE, -3) density = TRUE return TRUE diff --git a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm index d63ed5eba74..c8074cd4f62 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm @@ -39,6 +39,14 @@ if(opened || !istype(W, /obj/item/card/id)) return ..() + if(broken) + to_chat(user, "The locker appears to be broken.") + return + + if(user.loc == src) + to_chat(user, "You can't reach the lock from inside.") + return + if(istype(W, /obj/item/card/id/guest)) to_chat(user, "Invalid identification card.") return @@ -47,16 +55,17 @@ if(!I || !I.registered_name) return - else if(allowed(user) || !registered_name || (istype(I) && (registered_name == I.registered_name))) + if(allowed(user) || !registered_name || (istype(I) && (registered_name == I.registered_name))) //they can open all lockers, or nobody owns this, or they own this locker - togglelock(user) + locked = !locked + update_icon() if(!locked) registered_name = null desc = initial(desc) if(!registered_name && locked) registered_name = I.registered_name - desc = "Owned by [I.registered_name]." + desc = "Owned by [I.registered_name]." else to_chat(user, "Access denied.")