Add a staffwho for programmatic use

This commit is contained in:
Aronai Sieyes
2020-05-12 11:17:30 -04:00
parent d4cfdcfb3a
commit 1cc015f9aa

View File

@@ -70,6 +70,41 @@
var/message = get_staffwho_message(holder)
to_chat(src, message)
/proc/get_staffwho_numbers()
var/admin_count = 0
var/mod_count = 0
var/dev_count = 0
var/other_count = 0
var/list/keys = list()
for(var/client/C in GLOB.admins)
var/keymsg = "[C.key]"
if(C.is_afk())
keymsg += " *(AFK)*"
else if(C.holder.fakekey)
keymsg += " *(Stealth)*"
else if(isobserver(C.mob))
keymsg += " *(Ghost)*"
else if(isnewplayer(C.mob))
keymsg += " *(Lobby)*"
else
keymsg += " *(Ingame)*"
keys += keymsg
if(R_ADMIN & C.holder.rights && R_BAN & C.holder.rights) // R_ADMIN and R_BAN apparently an admin makes
admin_count++
else if(R_ADMIN & C.holder.rights && !(R_SERVER & C.holder.rights)) // R_ADMIN but not R_SERVER makes a moderator
mod_count++
else if(R_SERVER & C.holder.rights) // R_SERVER makes a dev
dev_count++
else // No R_ADMIN&&R_BAN, R_ADMIN!R_BAN, R_SERVER, must be a GM or something
other_count++
return list("Admins" = admin_count, "Mods" = mod_count, "Devs" = dev_count, "Other" = other_count, "keys" = keys)
/proc/get_staffwho_message(datum/admins/holder)
var/msg = ""
var/modmsg = ""