/* YW EDIT START /client/verb/who_advanced() set name = "Advanced Who" set category = "OOC" var/msg = "Current Players:\n" var/list/Lines = list() if(holder) for(var/client/C in GLOB.clients) var/entry = "[C.key]" if(C.holder && C.holder.fakekey) entry += " (as [C.holder.fakekey])" entry += "" if(C.mob.real_name) switch(C.mob.stat) if(UNCONSCIOUS) entry += "Unconscious" // these are literally all spans so I can apply .inverted to them because black on dark grey isn't legible if(DEAD) if(isobserver(C.mob)) var/mob/observer/dead/O = C.mob if(O.started_as_observer) entry += "Observing" else entry += "Died" else entry += "Playing" entry += " as [C.mob.real_name]" else if(isnewplayer(C.mob)) entry += "In lobby" entry += "" var/age if(isnum(C.player_age)) age = C.player_age else age = 0 if(age <= 1) age = "[age]" else if(age < 10) age = "[age]" entry += "Age: [age]" entry += "" if(is_special_character(C.mob)) if(C.mob?.mind?.special_role) entry += "[C.mob.mind.special_role]" else entry += "Antagonist" entry += "" if(C.is_afk()) var/seconds = C.last_activity_seconds() entry += " (AFK - " entry += "[round(seconds / 60)] minutes, " entry += "[seconds % 60] seconds)" entry += "" entry += " (?)" entry += "" Lines += entry else for(var/client/C in GLOB.clients) var/entry = "\t" if(C.holder && C.holder.fakekey) entry += "[C.holder.fakekey]" else entry += "[C.key]" var/mob/observer/dead/O = C.mob if(isobserver(O)) entry += " - Observing
" else if(istype(O,/mob/new_player)) entry += " - In Lobby
" else entry += " - Playing
" Lines += entry msg += "" for(var/line in sortList(Lines)) msg += "[line]" msg += "
" msg += "Total Players: [length(Lines)]" msg = "" + msg + "" to_chat(src, msg) YW EDIT STOP*/