diff --git a/code/game/machinery/computer/depot.dm b/code/game/machinery/computer/depot.dm
index 6bd5eadc822..9509db6a9e6 100644
--- a/code/game/machinery/computer/depot.dm
+++ b/code/game/machinery/computer/depot.dm
@@ -138,6 +138,7 @@
if(depotarea)
depotarea.toggle_door_locks(src)
to_chat(user, "Door locks toggled.")
+ playsound(user, sound_yes, 50, 0)
/obj/machinery/computer/syndicate_depot/doors/secondary(mob/user, subcommand)
if(..())
@@ -145,6 +146,7 @@
if(depotarea)
depotarea.toggle_falsewalls(src)
to_chat(user, "False walls toggled.")
+ playsound(user, sound_yes, 50, 0)
// Engineering AKA self destruct computer, no useful functions, just a trap for the people who can't resist pushing dangerous-sounding buttons.
@@ -285,6 +287,7 @@
to_chat(user, "[src] requires authentication with syndicate codewords, which you do not know.")
raise_alert("Detected unauthorized access by [user] to [src]!")
updateUsrDialog()
+ playsound(user, sound_yes, 50, 0)
/obj/machinery/computer/syndicate_depot/syndiecomms/secondary(mob/user, subcommand)
if(..())
@@ -319,6 +322,7 @@
else
to_chat(user, "ERROR: [src] is unable to uplink to depot network.")
updateUsrDialog()
+ playsound(user, sound_yes, 50, 0)
/obj/machinery/computer/syndicate_depot/syndiecomms/proc/grant_syndie_faction(mob/user)
user.faction += "syndicate"
@@ -432,6 +436,7 @@
var/bresult = mybeacon.toggle()
to_chat(user, "Syndicate Teleporter Beacon: [bresult ? "ON" : "OFF"]")
updateUsrDialog()
+ playsound(user, sound_yes, 50, 0)
/obj/machinery/computer/syndicate_depot/teleporter/secondary(mob/user)
if(..())
@@ -444,6 +449,7 @@
toggle_portal()
to_chat(user, "Outgoing Teleport Portal: [portal_enabled ? "ON" : "OFF"]")
updateUsrDialog()
+ playsound(user, sound_yes, 50, 0)
/obj/machinery/computer/syndicate_depot/teleporter/proc/toggle_portal()
portal_enabled = !portal_enabled
@@ -507,6 +513,7 @@
if(depotarea)
depotarea.reset_alert()
to_chat(user, "Alert level reset.")
+ playsound(user, sound_yes, 50, 0)
/obj/machinery/computer/syndicate_depot/aiterminal/secondary(mob/user)
if(..())
@@ -516,4 +523,5 @@
new /obj/effect/portal(get_turf(B))
to_chat(user, "[B] has been recalled.")
qdel(B)
- raise_alert("Sentry bot removed via emergency recall.")
\ No newline at end of file
+ raise_alert("Sentry bot removed via emergency recall.")
+ playsound(user, sound_yes, 50, 0)
\ No newline at end of file
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/depot.dm b/code/game/objects/structures/crates_lockers/closets/secure/depot.dm
index 1d52dbcdf1b..f3cf8d67c13 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/depot.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/depot.dm
@@ -6,6 +6,7 @@
anchored = 1
health = 200
req_access = list()
+ var/ignore_use = FALSE
/obj/structure/closet/secure_closet/syndicate/depot/New()
@@ -26,9 +27,10 @@
. = ..()
/obj/structure/closet/secure_closet/syndicate/depot/proc/loot_pickup()
- var/area/syndicate_depot/core/depotarea = areaMaster
- if(depotarea)
- depotarea.locker_looted()
+ if(!ignore_use)
+ var/area/syndicate_depot/core/depotarea = areaMaster
+ if(depotarea)
+ depotarea.locker_looted()
/obj/structure/closet/secure_closet/syndicate/depot/attack_animal(mob/M)
if(isanimal(M) && "syndicate" in M.faction)
@@ -42,4 +44,10 @@
/obj/structure/closet/secure_closet/syndicate/depot/togglelock(mob/user)
. = ..()
if(!locked)
- loot_pickup()
\ No newline at end of file
+ loot_pickup()
+
+/obj/structure/closet/secure_closet/syndicate/depot/attack_ghost(mob/user)
+ if(user.can_advanced_admin_interact())
+ ignore_use = TRUE
+ toggle(user)
+ ignore_use = FALSE
\ No newline at end of file
diff --git a/code/modules/events/grid_check.dm b/code/modules/events/grid_check.dm
index 9ca4e878050..fab719946d7 100644
--- a/code/modules/events/grid_check.dm
+++ b/code/modules/events/grid_check.dm
@@ -17,8 +17,8 @@
if(announce)
event_announcement.Announce("Abnormal activity detected in [station_name()]'s powernet. As a precautionary measure, the station's power will be shut off for an indeterminate duration.", "Critical Power Failure", new_sound = 'sound/AI/poweroff.ogg')
- var/list/skipped_areas = list(/area/turret_protected/ai, /area/syndicate_depot)
- var/list/skipped_areas_apc = list(/area/engine/engineering, /area/syndicate_depot)
+ var/list/skipped_areas = list(/area/turret_protected/ai, /area/syndicate_depot/core, /area/syndicate_depot/outer)
+ var/list/skipped_areas_apc = list(/area/engine/engineering, /area/syndicate_depot/core, /area/syndicate_depot/outer)
for(var/obj/machinery/power/smes/S in machines)
var/area/current_area = get_area(S)
@@ -41,8 +41,8 @@
C.cell.charge = 0
/proc/power_restore(var/announce = 1)
- var/list/skipped_areas = list(/area/turret_protected/ai, /area/syndicate_depot)
- var/list/skipped_areas_apc = list(/area/engine/engineering, /area/syndicate_depot)
+ var/list/skipped_areas = list(/area/turret_protected/ai, /area/syndicate_depot/core, /area/syndicate_depot/outer)
+ var/list/skipped_areas_apc = list(/area/engine/engineering, /area/syndicate_depot/core, /area/syndicate_depot/outer)
if(announce)
event_announcement.Announce("Power has been restored to [station_name()]. We apologize for the inconvenience.", "Power Systems Nominal", new_sound = 'sound/AI/poweron.ogg')
diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate.dm b/code/modules/mob/living/simple_animal/hostile/syndicate.dm
index 894c039b3f4..9d728977556 100644
--- a/code/modules/mob/living/simple_animal/hostile/syndicate.dm
+++ b/code/modules/mob/living/simple_animal/hostile/syndicate.dm
@@ -134,6 +134,14 @@
if(scan_cycles >= 15 && istype(depotarea))
scan_cycles = 0
if(!atoms_share_level(src, spawn_turf))
+ if(istype(loc, /obj/structure/closet))
+ var/obj/structure/closet/O = loc
+ forceMove(get_turf(src))
+ visible_message("[src] smashes their way out of [O]!")
+ qdel(O)
+ raise_alert("[src] reported being trapped in a locker.")
+ raised_alert = FALSE
+ return
if(alert_on_spacing)
raise_alert("[src] lost in space.")
death()