Switch to using GLOB.admins instead of admins

This commit is contained in:
Aronai Sieyes
2020-05-12 11:16:54 -04:00
parent 4ff57116b4
commit d4cfdcfb3a
21 changed files with 47 additions and 45 deletions

View File

@@ -1,5 +1,3 @@
var/list/admins = list() //list of all clients whom are admins
//Since it didn't really belong in any other category, I'm putting this here //Since it didn't really belong in any other category, I'm putting this here
//This is for procs to replace all the goddamn 'in world's that are chilling around the code //This is for procs to replace all the goddamn 'in world's that are chilling around the code

View File

@@ -47,7 +47,7 @@
if (config.log_debug) if (config.log_debug)
WRITE_LOG(debug_log, "DEBUG: [text]") WRITE_LOG(debug_log, "DEBUG: [text]")
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if(C.is_preference_enabled(/datum/client_preference/debug/show_debug_logs)) if(C.is_preference_enabled(/datum/client_preference/debug/show_debug_logs))
to_chat(C, "<span class='filter_debuglog'>DEBUG: [text]</span>") to_chat(C, "<span class='filter_debuglog'>DEBUG: [text]</span>")

View File

@@ -57,23 +57,23 @@ var/datum/controller/failsafe/Failsafe
if(4,5) if(4,5)
--defcon --defcon
if(3) if(3)
to_chat(admins, "<span class='adminnotice'>Notice: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5-defcon) * processing_interval] ticks.</span>") to_chat(GLOB.admins, "<span class='adminnotice'>Notice: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5-defcon) * processing_interval] ticks.</span>")
--defcon --defcon
if(2) if(2)
to_chat(admins, "<span class='boldannounce'>Warning: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5-defcon) * processing_interval] ticks. Automatic restart in [processing_interval] ticks.</span>") to_chat(GLOB.admins, "<span class='boldannounce'>Warning: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5-defcon) * processing_interval] ticks. Automatic restart in [processing_interval] ticks.</span>")
--defcon --defcon
if(1) if(1)
to_chat(admins, "<span class='boldannounce'>Warning: DEFCON [defcon_pretty()]. The Master Controller has still not fired within the last [(5-defcon) * processing_interval] ticks. Killing and restarting...</span>") to_chat(GLOB.admins, "<span class='boldannounce'>Warning: DEFCON [defcon_pretty()]. The Master Controller has still not fired within the last [(5-defcon) * processing_interval] ticks. Killing and restarting...</span>")
--defcon --defcon
var/rtn = Recreate_MC() var/rtn = Recreate_MC()
if(rtn > 0) if(rtn > 0)
defcon = 4 defcon = 4
master_iteration = 0 master_iteration = 0
to_chat(admins, "<span class='adminnotice'>MC restarted successfully</span>") to_chat(GLOB.admins, "<span class='adminnotice'>MC restarted successfully</span>")
else if(rtn < 0) else if(rtn < 0)
log_world("FailSafe: Could not restart MC, runtime encountered. Entering defcon 0") log_world("FailSafe: Could not restart MC, runtime encountered. Entering defcon 0")
to_chat(admins, "<span class='boldannounce'>ERROR: DEFCON [defcon_pretty()]. Could not restart MC, runtime encountered. I will silently keep retrying.</span>") to_chat(GLOB.admins, "<span class='boldannounce'>ERROR: DEFCON [defcon_pretty()]. Could not restart MC, runtime encountered. I will silently keep retrying.</span>")
//if the return number was 0, it just means the mc was restarted too recently, and it just needs some time before we try again //if the return number was 0, it just means the mc was restarted too recently, and it just needs some time before we try again
//no need to handle that specially when defcon 0 can handle it //no need to handle that specially when defcon 0 can handle it
if(0) //DEFCON 0! (mc failed to restart) if(0) //DEFCON 0! (mc failed to restart)
@@ -81,7 +81,7 @@ var/datum/controller/failsafe/Failsafe
if(rtn > 0) if(rtn > 0)
defcon = 4 defcon = 4
master_iteration = 0 master_iteration = 0
to_chat(admins, "<span class='adminnotice'>MC restarted successfully</span>") to_chat(GLOB.admins, "<span class='adminnotice'>MC restarted successfully</span>")
else else
defcon = min(defcon + 1,5) defcon = min(defcon + 1,5)
master_iteration = Master.iteration master_iteration = Master.iteration

View File

@@ -1,7 +1,7 @@
proc/sql_poll_population() proc/sql_poll_population()
if(!sqllogging) if(!sqllogging)
return return
var/admincount = admins.len var/admincount = GLOB.admins.len
var/playercount = 0 var/playercount = 0
for(var/mob/M in player_list) for(var/mob/M in player_list)
if(M.client) if(M.client)

View File

@@ -42,7 +42,7 @@
/client/proc/is_key_ignored(var/key_to_check) /client/proc/is_key_ignored(var/key_to_check)
key_to_check = ckey(key_to_check) key_to_check = ckey(key_to_check)
if(key_to_check in prefs.ignored_players) if(key_to_check in prefs.ignored_players)
if(GLOB.directory[key_to_check] in admins) // This is here so this is only evaluated if someone is actually being blocked. if(GLOB.directory[key_to_check] in GLOB.admins) // This is here so this is only evaluated if someone is actually being blocked.
return 0 return 0
return 1 return 1
return 0 return 0

View File

@@ -151,7 +151,7 @@
receivers |= E.owner.client receivers |= E.owner.client
// Admins with RLOOC displayed who weren't already in // Admins with RLOOC displayed who weren't already in
for(var/client/admin in admins) for(var/client/admin in GLOB.admins)
if(!(admin in receivers) && admin.is_preference_enabled(/datum/client_preference/holder/show_rlooc)) if(!(admin in receivers) && admin.is_preference_enabled(/datum/client_preference/holder/show_rlooc))
r_receivers |= admin r_receivers |= admin
@@ -159,7 +159,7 @@
for(var/client/target in receivers) for(var/client/target in receivers)
var/admin_stuff = "" var/admin_stuff = ""
if(target in admins) if(target in GLOB.admins)
admin_stuff += "/([key])" admin_stuff += "/([key])"
to_chat(target, "<span class='ooc looc'>" + create_text_tag("looc", "LOOC:", target) + " <EM>[display_name][admin_stuff]:</EM> <span class='message'>[msg]</span></span>") to_chat(target, "<span class='ooc looc'>" + create_text_tag("looc", "LOOC:", target) + " <EM>[display_name][admin_stuff]:</EM> <span class='message'>[msg]</span></span>")

View File

@@ -67,6 +67,10 @@
set category = "Admin" set category = "Admin"
set name = "Staffwho" set name = "Staffwho"
var/message = get_staffwho_message(holder)
to_chat(src, message)
/proc/get_staffwho_message(datum/admins/holder)
var/msg = "" var/msg = ""
var/modmsg = "" var/modmsg = ""
var/devmsg = "" var/devmsg = ""
@@ -76,7 +80,7 @@
var/num_devs_online = 0 var/num_devs_online = 0
var/num_event_managers_online = 0 var/num_event_managers_online = 0
if(holder) if(holder)
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if(R_ADMIN & C.holder.rights && R_BAN & C.holder.rights) //VOREStation Edit if(R_ADMIN & C.holder.rights && R_BAN & C.holder.rights) //VOREStation Edit
if(C.holder.fakekey && (!R_ADMIN & holder.rights && !R_MOD & holder.rights)) //Event Managerss can't see stealthmins if(C.holder.fakekey && (!R_ADMIN & holder.rights && !R_MOD & holder.rights)) //Event Managerss can't see stealthmins
@@ -174,7 +178,7 @@
num_event_managers_online++ num_event_managers_online++
else else
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if(R_ADMIN & C.holder.rights && R_BAN & C.holder.rights) //VOREStation Edit if(R_ADMIN & C.holder.rights && R_BAN & C.holder.rights) //VOREStation Edit
if(!C.holder.fakekey) if(!C.holder.fakekey)
msg += "\t[C] is a [C.holder.rank]\n" msg += "\t[C] is a [C.holder.rank]\n"
@@ -207,4 +211,4 @@
if(config.show_event_managers) if(config.show_event_managers)
msg += "\n<b> Current Miscellaneous ([num_event_managers_online]):</b>\n" + eventMmsg //VOREStation Edit msg += "\n<b> Current Miscellaneous ([num_event_managers_online]):</b>\n" + eventMmsg //VOREStation Edit
to_chat(src,msg) return msg

View File

@@ -344,7 +344,7 @@ var/world_topic_spam_protect_time = world.timeofday
to_chat(C,message) to_chat(C,message)
for(var/client/A in admins) for(var/client/A in GLOB.admins)
if(A != C) if(A != C)
to_chat(A,amessage) to_chat(A,amessage)

View File

@@ -72,7 +72,7 @@ datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration =
who += ", [C]" who += ", [C]"
var/adminwho var/adminwho
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if(!adminwho) if(!adminwho)
adminwho = "[C]" adminwho = "[C]"
else else

View File

@@ -8,13 +8,13 @@ var/global/floorIsLava = 0
msg = "<span class='filter_adminlog log_message'><span class='prefix'>ADMIN LOG:</span> <span class=\"message\">[msg]</span></span>" msg = "<span class='filter_adminlog log_message'><span class='prefix'>ADMIN LOG:</span> <span class=\"message\">[msg]</span></span>"
//log_adminwarn(msg) //log_and_message_admins is for this //log_adminwarn(msg) //log_and_message_admins is for this
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if((R_ADMIN|R_MOD) & C.holder.rights) if((R_ADMIN|R_MOD) & C.holder.rights)
to_chat(C,msg) to_chat(C,msg)
/proc/msg_admin_attack(var/text) //Toggleable Attack Messages /proc/msg_admin_attack(var/text) //Toggleable Attack Messages
var/rendered = "<span class='filter_attacklog log_message'><span class='prefix'>ATTACK:</span> <span class=\"message\">[text]</span></span>" var/rendered = "<span class='filter_attacklog log_message'><span class='prefix'>ATTACK:</span> <span class=\"message\">[text]</span></span>"
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if((R_ADMIN|R_MOD) & C.holder.rights) if((R_ADMIN|R_MOD) & C.holder.rights)
if(C.is_preference_enabled(/datum/client_preference/mod/show_attack_logs)) if(C.is_preference_enabled(/datum/client_preference/mod/show_attack_logs))
var/msg = rendered var/msg = rendered
@@ -1568,12 +1568,12 @@ datum/admins/var/obj/item/weapon/paper/admin/faxreply // var to hold fax replies
to_chat(src.owner, "<span class='notice'>Message reply to transmitted successfully.</span>") to_chat(src.owner, "<span class='notice'>Message reply to transmitted successfully.</span>")
if(P.sender) // sent as a reply if(P.sender) // sent as a reply
log_admin("[key_name(src.owner)] replied to a fax message from [key_name(P.sender)]") log_admin("[key_name(src.owner)] replied to a fax message from [key_name(P.sender)]")
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if((R_ADMIN | R_MOD | R_EVENT) & C.holder.rights) if((R_ADMIN | R_MOD | R_EVENT) & C.holder.rights)
to_chat(C, "<span class='log_message'><span class='prefix'>FAX LOG:</span>[key_name_admin(src.owner)] replied to a fax message from [key_name_admin(P.sender)] (<a href='?_src_=holder;AdminFaxView=\ref[rcvdcopy]'>VIEW</a>)</span>") to_chat(C, "<span class='log_message'><span class='prefix'>FAX LOG:</span>[key_name_admin(src.owner)] replied to a fax message from [key_name_admin(P.sender)] (<a href='?_src_=holder;AdminFaxView=\ref[rcvdcopy]'>VIEW</a>)</span>")
else else
log_admin("[key_name(src.owner)] has sent a fax message to [destination.department]") log_admin("[key_name(src.owner)] has sent a fax message to [destination.department]")
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if((R_ADMIN | R_MOD | R_EVENT) & C.holder.rights) if((R_ADMIN | R_MOD | R_EVENT) & C.holder.rights)
to_chat(C, "<span class='log_message'><span class='prefix'>FAX LOG:</span>[key_name_admin(src.owner)] has sent a fax message to [destination.department] (<a href='?_src_=holder;AdminFaxView=\ref[rcvdcopy]'>VIEW</a>)</span>") to_chat(C, "<span class='log_message'><span class='prefix'>FAX LOG:</span>[key_name_admin(src.owner)] has sent a fax message to [destination.department] (<a href='?_src_=holder;AdminFaxView=\ref[rcvdcopy]'>VIEW</a>)</span>")

View File

@@ -64,10 +64,10 @@ var/list/admin_ranks = list() //list of all ranks with associated rights
/proc/load_admins() /proc/load_admins()
//clear the datums references //clear the datums references
admin_datums.Cut() admin_datums.Cut()
for(var/client/C in admins) for(var/client/C in GLOB.admins)
C.remove_admin_verbs() C.remove_admin_verbs()
C.holder = null C.holder = null
admins.Cut() GLOB.admins.Cut()
if(config.admin_legacy_system) if(config.admin_legacy_system)
load_admin_ranks() load_admin_ranks()

View File

@@ -31,18 +31,18 @@ var/list/admin_datums = list()
owner = C owner = C
owner.holder = src owner.holder = src
owner.add_admin_verbs() //TODO owner.add_admin_verbs() //TODO
admins |= C GLOB.admins |= C
/datum/admins/proc/disassociate() /datum/admins/proc/disassociate()
if(owner) if(owner)
admins -= owner GLOB.admins -= owner
owner.remove_admin_verbs() owner.remove_admin_verbs()
owner.deadmin_holder = owner.holder owner.deadmin_holder = owner.holder
owner.holder = null owner.holder = null
/datum/admins/proc/reassociate() /datum/admins/proc/reassociate()
if(owner) if(owner)
admins += owner GLOB.admins += owner
owner.holder = src owner.holder = src
owner.deadmin_holder = null owner.deadmin_holder = null
owner.add_admin_verbs() owner.add_admin_verbs()

View File

@@ -1300,7 +1300,7 @@
var/mob/M = locate(href_list["take_question"]) var/mob/M = locate(href_list["take_question"])
if(ismob(M)) if(ismob(M))
var/take_msg = "<span class='notice'><b>ADMINHELP</b>: <b>[key_name(usr.client)]</b> is attending to <b>[key_name(M)]'s</b> adminhelp, please don't dogpile them.</span>" var/take_msg = "<span class='notice'><b>ADMINHELP</b>: <b>[key_name(usr.client)]</b> is attending to <b>[key_name(M)]'s</b> adminhelp, please don't dogpile them.</span>"
for(var/client/X in admins) for(var/client/X in GLOB.admins)
if((R_ADMIN|R_MOD|R_SERVER) & X.holder.rights) //VOREStation Edit if((R_ADMIN|R_MOD|R_SERVER) & X.holder.rights) //VOREStation Edit
to_chat(X, take_msg) to_chat(X, take_msg)
to_chat(M, "<span class='filter_pm notice'><b>Your adminhelp is being attended to by [usr.client]. Thanks for your patience!</b></span>") to_chat(M, "<span class='filter_pm notice'><b>Your adminhelp is being attended to by [usr.client]. Thanks for your patience!</b></span>")

View File

@@ -234,7 +234,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
AddInteraction("<font color='red'>[LinkedReplyName(ref_src)]: [msg]</font>") AddInteraction("<font color='red'>[LinkedReplyName(ref_src)]: [msg]</font>")
//send this msg to all admins //send this msg to all admins
for(var/client/X in admins) for(var/client/X in GLOB.admins)
if(X.is_preference_enabled(/datum/client_preference/holder/play_adminhelp_ping)) if(X.is_preference_enabled(/datum/client_preference/holder/play_adminhelp_ping))
X << 'sound/effects/adminhelp.ogg' X << 'sound/effects/adminhelp.ogg'
window_flash(X) window_flash(X)
@@ -549,7 +549,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
/proc/get_admin_counts(requiredflags = R_BAN) /proc/get_admin_counts(requiredflags = R_BAN)
. = list("total" = list(), "noflags" = list(), "afk" = list(), "stealth" = list(), "present" = list()) . = list("total" = list(), "noflags" = list(), "afk" = list(), "stealth" = list(), "present" = list())
for(var/client/X in admins) for(var/client/X in GLOB.admins)
.["total"] += X .["total"] += X
if(requiredflags != 0 && !check_rights(rights_required = requiredflags, show_msg = FALSE, C = X)) if(requiredflags != 0 && !check_rights(rights_required = requiredflags, show_msg = FALSE, C = X))
.["noflags"] += X .["noflags"] += X
@@ -579,7 +579,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
/proc/ircadminwho() /proc/ircadminwho()
var/list/message = list("Admins: ") var/list/message = list("Admins: ")
var/list/admin_keys = list() var/list/admin_keys = list()
for(var/adm in admins) for(var/adm in GLOB.admins)
var/client/C = adm var/client/C = adm
admin_keys += "[C][C.holder.fakekey ? "(Stealth)" : ""][C.is_afk() ? "(AFK)" : ""]" admin_keys += "[C][C.holder.fakekey ? "(Stealth)" : ""][C.is_afk() ? "(AFK)" : ""]"

View File

@@ -200,12 +200,12 @@
if(irc) if(irc)
log_admin("PM: [key_name(src)]->IRC: [rawmsg]") log_admin("PM: [key_name(src)]->IRC: [rawmsg]")
for(var/client/X in admins) for(var/client/X in GLOB.admins)
to_chat(X, "<span class='pm notice'><B>PM: [key_name(src, X, 0)]-&gt;IRC:</B> [keywordparsedmsg]</span>") to_chat(X, "<span class='pm notice'><B>PM: [key_name(src, X, 0)]-&gt;IRC:</B> [keywordparsedmsg]</span>")
else else
log_admin("PM: [key_name(src)]->[key_name(recipient)]: [rawmsg]") log_admin("PM: [key_name(src)]->[key_name(recipient)]: [rawmsg]")
//we don't use message_admins here because the sender/receiver might get it too //we don't use message_admins here because the sender/receiver might get it too
for(var/client/X in admins) for(var/client/X in GLOB.admins)
if(X.key!=key && X.key!=recipient.key) //check client/X is an admin and isn't the sender or recipient if(X.key!=key && X.key!=recipient.key) //check client/X is an admin and isn't the sender or recipient
to_chat(X, "<span class='pm notice'><B>PM: [key_name(src, X, 0)]-&gt;[key_name(recipient, X, 0)]:</B> [keywordparsedmsg]</span>" ) to_chat(X, "<span class='pm notice'><B>PM: [key_name(src, X, 0)]-&gt;[key_name(recipient, X, 0)]:</B> [keywordparsedmsg]</span>" )

View File

@@ -12,7 +12,7 @@
log_adminsay(msg,src) log_adminsay(msg,src)
//VOREStation Edit Start - Adds R_EVENT //VOREStation Edit Start - Adds R_EVENT
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if(check_rights(R_ADMIN|R_EVENT)) if(check_rights(R_ADMIN|R_EVENT))
to_chat(C, "<span class='admin_channel'>" + create_text_tag("admin", "ADMIN:", C) + " <span class='name'>[key_name(usr, 1)]</span>([admin_jump_link(mob, src)]): <span class='message'>[msg]</span></span>") to_chat(C, "<span class='admin_channel'>" + create_text_tag("admin", "ADMIN:", C) + " <span class='name'>[key_name(usr, 1)]</span>([admin_jump_link(mob, src)]): <span class='message'>[msg]</span></span>")
//VOREStation Edit End //VOREStation Edit End
@@ -36,7 +36,7 @@
var/sender_name = key_name(usr, 1) var/sender_name = key_name(usr, 1)
if(check_rights(R_ADMIN, 0)) if(check_rights(R_ADMIN, 0))
sender_name = "<span class='admin'>[sender_name]</span>" sender_name = "<span class='admin'>[sender_name]</span>"
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if(check_rights(R_ADMIN|R_MOD|R_SERVER|R_STEALTH)) //VOREStation Edit if(check_rights(R_ADMIN|R_MOD|R_SERVER|R_STEALTH)) //VOREStation Edit
to_chat(C, "<span class='mod_channel'>" + create_text_tag("mod", "MOD:", C) + " <span class='name'>[sender_name]</span>([admin_jump_link(mob, C.holder)]): <span class='message'>[msg]</span></span>") to_chat(C, "<span class='mod_channel'>" + create_text_tag("mod", "MOD:", C) + " <span class='name'>[sender_name]</span>([admin_jump_link(mob, C.holder)]): <span class='message'>[msg]</span></span>")
@@ -59,7 +59,7 @@
var/sender_name = key_name(usr, 1) var/sender_name = key_name(usr, 1)
if(check_rights(R_ADMIN, 0)) if(check_rights(R_ADMIN, 0))
sender_name = "<span class='admin'>[sender_name]</span>" sender_name = "<span class='admin'>[sender_name]</span>"
for(var/client/C in admins) for(var/client/C in GLOB.admins)
to_chat(C, "<span class='event_channel'>" + create_text_tag("event", "EVENT:", C) + " <span class='name'>[sender_name]</span>([admin_jump_link(mob, C.holder)]): <span class='message'>[msg]</span></span>") to_chat(C, "<span class='event_channel'>" + create_text_tag("event", "EVENT:", C) + " <span class='name'>[sender_name]</span>([admin_jump_link(mob, C.holder)]): <span class='message'>[msg]</span></span>")
feedback_add_details("admin_verb","GS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! feedback_add_details("admin_verb","GS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!

View File

@@ -584,7 +584,7 @@
if("Players") if("Players")
to_chat(usr, span("filter_debuglogs", jointext(player_list,","))) to_chat(usr, span("filter_debuglogs", jointext(player_list,",")))
if("Admins") if("Admins")
to_chat(usr, span("filter_debuglogs", jointext(admins,","))) to_chat(usr, span("filter_debuglogs", jointext(GLOB.admins,",")))
if("Mobs") if("Mobs")
to_chat(usr, span("filter_debuglogs", jointext(mob_list,","))) to_chat(usr, span("filter_debuglogs", jointext(mob_list,",")))
if("Living Mobs") if("Living Mobs")

View File

@@ -19,7 +19,7 @@
var/image/cross = image('icons/obj/storage.dmi',"bible") var/image/cross = image('icons/obj/storage.dmi',"bible")
msg = "<font color='blue'>[bicon(cross)] <b><font color=purple>PRAY: </font>[key_name(src, 1)] (<A HREF='?_src_=holder;adminmoreinfo=\ref[src]'>?</A>) (<A HREF='?_src_=holder;adminplayeropts=\ref[src]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[src]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[src]'>SM</A>) ([admin_jump_link(src, src)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;adminspawncookie=\ref[src]'>SC</a>) (<A HREF='?_src_=holder;adminsmite=\ref[src]'>SMITE</a>):</b> [msg]</font>" msg = "<font color='blue'>[bicon(cross)] <b><font color=purple>PRAY: </font>[key_name(src, 1)] (<A HREF='?_src_=holder;adminmoreinfo=\ref[src]'>?</A>) (<A HREF='?_src_=holder;adminplayeropts=\ref[src]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[src]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[src]'>SM</A>) ([admin_jump_link(src, src)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;adminspawncookie=\ref[src]'>SC</a>) (<A HREF='?_src_=holder;adminsmite=\ref[src]'>SMITE</a>):</b> [msg]</font>"
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if(R_ADMIN|R_EVENT & C.holder.rights) if(R_ADMIN|R_EVENT & C.holder.rights)
if(C.is_preference_enabled(/datum/client_preference/admin/show_chat_prayers)) if(C.is_preference_enabled(/datum/client_preference/admin/show_chat_prayers))
to_chat(C,msg) to_chat(C,msg)
@@ -31,14 +31,14 @@
/proc/CentCom_announce(var/msg, var/mob/Sender, var/iamessage) /proc/CentCom_announce(var/msg, var/mob/Sender, var/iamessage)
msg = "<font color='blue'><b><font color=orange>[uppertext(using_map.boss_short)]M[iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) ([admin_jump_link(Sender, src)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>) (<A HREF='?_src_=holder;CentComReply=\ref[Sender]'>RPLY</A>):</b> [msg]</font>" msg = "<font color='blue'><b><font color=orange>[uppertext(using_map.boss_short)]M[iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) ([admin_jump_link(Sender, src)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>) (<A HREF='?_src_=holder;CentComReply=\ref[Sender]'>RPLY</A>):</b> [msg]</font>"
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if(R_ADMIN|R_EVENT & C.holder.rights) if(R_ADMIN|R_EVENT & C.holder.rights)
to_chat(C,msg) to_chat(C,msg)
C << 'sound/machines/signal.ogg' C << 'sound/machines/signal.ogg'
/proc/Syndicate_announce(var/msg, var/mob/Sender) /proc/Syndicate_announce(var/msg, var/mob/Sender)
msg = "<font color='blue'><b><font color=crimson>ILLEGAL:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) ([admin_jump_link(Sender, src)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>) (<A HREF='?_src_=holder;SyndicateReply=\ref[Sender]'>RPLY</A>):</b> [msg]</font>" msg = "<font color='blue'><b><font color=crimson>ILLEGAL:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) ([admin_jump_link(Sender, src)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>) (<A HREF='?_src_=holder;SyndicateReply=\ref[Sender]'>RPLY</A>):</b> [msg]</font>"
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if(R_ADMIN|R_EVENT & C.holder.rights) if(R_ADMIN|R_EVENT & C.holder.rights)
to_chat(C,msg) to_chat(C,msg)
C << 'sound/machines/signal.ogg' C << 'sound/machines/signal.ogg'

View File

@@ -130,7 +130,7 @@
//Admin Authorisation //Admin Authorisation
holder = admin_datums[ckey] holder = admin_datums[ckey]
if(holder) if(holder)
admins += src GLOB.admins += src
holder.owner = src holder.owner = src
//preferences datum - also holds some persistant data for the client (because we may as well keep these datums to a minimum) //preferences datum - also holds some persistant data for the client (because we may as well keep these datums to a minimum)
@@ -191,7 +191,7 @@
log_and_message_admins("PARANOIA: [key_name(src)] has a very new BYOND account ([account_age] days).") log_and_message_admins("PARANOIA: [key_name(src)] has a very new BYOND account ([account_age] days).")
alert = TRUE alert = TRUE
if(alert) if(alert)
for(var/client/X in admins) for(var/client/X in GLOB.admins)
if(X.is_preference_enabled(/datum/client_preference/holder/play_adminhelp_ping)) if(X.is_preference_enabled(/datum/client_preference/holder/play_adminhelp_ping))
X << 'sound/voice/bcriminal.ogg' X << 'sound/voice/bcriminal.ogg'
window_flash(X) window_flash(X)
@@ -203,7 +203,7 @@
/client/Del() /client/Del()
if(holder) if(holder)
holder.owner = null holder.owner = null
admins -= src GLOB.admins -= src
GLOB.ahelp_tickets.ClientLogout(src) GLOB.ahelp_tickets.ClientLogout(src)
GLOB.directory -= ckey GLOB.directory -= ckey
GLOB.clients -= src GLOB.clients -= src

View File

@@ -6,7 +6,7 @@
log_access_out(src) log_access_out(src)
if(admin_datums[src.ckey]) if(admin_datums[src.ckey])
if (ticker && ticker.current_state == GAME_STATE_PLAYING) //Only report this stuff if we are currently playing. if (ticker && ticker.current_state == GAME_STATE_PLAYING) //Only report this stuff if we are currently playing.
var/admins_number = admins.len var/admins_number = GLOB.admins.len
message_admins("Admin logout: [key_name(src)]") message_admins("Admin logout: [key_name(src)]")
if(admins_number == 0) //Apparently the admin logging out is no longer an admin at this point, so we have to check this towards 0 and not towards 1. Awell. if(admins_number == 0) //Apparently the admin logging out is no longer an admin at this point, so we have to check this towards 0 and not towards 1. Awell.

View File

@@ -235,7 +235,7 @@ var/list/adminfaxes = list() //cache for faxes that have been sent to admins
msg += "(<a href='?_src_=holder;FaxReply=\ref[sender];originfax=\ref[src];replyorigin=[reply_type]'>REPLY</a>)</b>: " msg += "(<a href='?_src_=holder;FaxReply=\ref[sender];originfax=\ref[src];replyorigin=[reply_type]'>REPLY</a>)</b>: "
msg += "Receiving '[sent.name]' via secure connection ... <a href='?_src_=holder;AdminFaxView=\ref[sent]'>view message</a></span>" msg += "Receiving '[sent.name]' via secure connection ... <a href='?_src_=holder;AdminFaxView=\ref[sent]'>view message</a></span>"
for(var/client/C in admins) for(var/client/C in GLOB.admins)
if(check_rights((R_ADMIN|R_MOD|R_EVENT),0,C)) if(check_rights((R_ADMIN|R_MOD|R_EVENT),0,C))
to_chat(C,msg) to_chat(C,msg)
C << 'sound/effects/printer.ogg' C << 'sound/effects/printer.ogg'