@@ -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