Skip to content
This repository was archived by the owner on May 22, 2025. It is now read-only.

Commit 36e6af9

Browse files
committed
Syndifax
1 parent 78e1d4c commit 36e6af9

File tree

2 files changed

+27
-1
lines changed

2 files changed

+27
-1
lines changed

_maps/map_files/generic/CentCom.dmm

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21480,6 +21480,11 @@
2148021480
dir = 9
2148121481
},
2148221482
/obj/structure/table/reinforced,
21483+
/obj/machinery/photocopier/faxmachine{
21484+
department = "Syndicate";
21485+
destination = "Bridge";
21486+
hidefromfaxlist = 1
21487+
},
2148321488
/turf/open/floor/plasteel/dark,
2148421489
/area/centcom/syndicate_mothership)
2148521490
"crH" = (

code/modules/paperwork/faxmachine.dm

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,12 @@ GLOBAL_LIST_EMPTY(adminfaxes)
1717
var/sendcooldown = 0 // to avoid spamming fax messages
1818
var/department = "Unknown" // our department
1919
var/destination = "Central Command" // the department we're sending to
20+
var/hidefromfaxlist = FALSE // If enabled does not show up in the destination fax list
2021

2122
/obj/machinery/photocopier/faxmachine/Initialize(mapload)
2223
. = ..()
24+
if(hidefromfaxlist)
25+
return
2326
GLOB.allfaxes += src
2427
if( !((department in GLOB.alldepartments) || (department in GLOB.admin_departments)) )
2528
GLOB.alldepartments |= department
@@ -45,7 +48,7 @@ GLOBAL_LIST_EMPTY(adminfaxes)
4548
.["has_copy"] = !copier_empty()
4649
.["copy_name"] = copy?.name || photocopy?.name || doccopy?.name
4750
.["cooldown"] = sendcooldown - world.time
48-
.["depts"] = (GLOB.alldepartments + GLOB.admin_departments)
51+
.["depts"] = obj_flags & EMAGGED ? (GLOB.alldepartments + GLOB.admin_departments + list("Syndicate")) : (GLOB.alldepartments + GLOB.admin_departments)
4952
.["destination"] = destination
5053

5154
/obj/machinery/photocopier/faxmachine/ui_act(action, list/params)
@@ -62,6 +65,8 @@ GLOBAL_LIST_EMPTY(adminfaxes)
6265
sendcooldown = world.time + 1 MINUTES
6366
if (destination in GLOB.admin_departments)
6467
INVOKE_ASYNC(src, PROC_REF(send_admin_fax), usr, destination)
68+
if (destination == "Syndicate")
69+
INVOKE_ASYNC(src, PROC_REF(send_admin_fax), usr, destination)
6570
else
6671
INVOKE_ASYNC(src, PROC_REF(sendfax), destination)
6772
return
@@ -170,6 +175,12 @@ GLOBAL_LIST_EMPTY(adminfaxes)
170175
if(C.prefs.toggles & SOUND_PRAYER_N_FAX)//if done then delete these comments
171176
SEND_SOUND(sender, sound('sound/effects/admin_fax.ogg'))
172177
send_adminmessage(sender, "CENTCOM FAX", rcvdcopy, "CentcomFaxReply", "#006100")
178+
if ("Syndicate")
179+
for(var/client/C in GLOB.permissions.admins)
180+
if(C.prefs.chat_toggles & CHAT_PRAYER_N_FAX)
181+
if(C.prefs.toggles & SOUND_PRAYER_N_FAX)
182+
SEND_SOUND(sender, sound('sound/effects/admin_fax.ogg'))
183+
send_adminmessage(sender, "SYNDICATE FAX", rcvdcopy, "SyndicateFaxReply", "crimson") //Same colour used in redphone
173184
sendcooldown = world.time + 1 MINUTES
174185
sleep(5 SECONDS)
175186
visible_message("[src] beeps, \"Message transmitted successfully.\"")
@@ -226,5 +237,15 @@ GLOBAL_LIST_EMPTY(adminfaxes)
226237
send_admin_fax(src)
227238

228239
/obj/machinery/photocopier/faxmachine/examine(mob/user)
240+
. = ..()
229241
if(IsAdminGhost(user))
230242
.+= span_notice("You can send admin faxes via Alt-Click to this specific fax machine.")
243+
244+
/obj/machinery/photocopier/faxmachine/emag_act(mob/user, /obj/item/card/emag/emag_card)
245+
if(obj_flags & EMAGGED)
246+
to_chat(user, span_warning("[src]'s transceiver is damaged!"))
247+
return FALSE
248+
obj_flags |= EMAGGED
249+
playsound(src, "sparks", 100, 1)
250+
to_chat(user, span_warning("You short out the security protocols on [src]'s transceiver!"))
251+
return TRUE

0 commit comments

Comments
 (0)