From b67068b5c50bafbc34212bb25dc93d0fcf0c76bc Mon Sep 17 00:00:00 2001 From: Fayrik Date: Mon, 27 Jul 2015 02:26:59 +0100 Subject: [PATCH] Who is cool again. Also, observers aren't ghosts. (And I hate pointless whitespace.) --- code/game/verbs/who.dm | 38 +++++++++++++++++++++++++----- code/modules/admin/player_panel.dm | 6 ++++- 2 files changed, 37 insertions(+), 7 deletions(-) diff --git a/code/game/verbs/who.dm b/code/game/verbs/who.dm index bd5cd555a65..a4bab1d38cc 100644 --- a/code/game/verbs/who.dm +++ b/code/game/verbs/who.dm @@ -1,4 +1,3 @@ - /client/verb/who() set name = "Who" set category = "OOC" @@ -8,11 +7,38 @@ var/list/Lines = list() if(holder) - for(var/client/C in clients) - var/entry = "\t[C.key]" - if(C.holder && C.holder.fakekey) - entry += " (as [C.holder.fakekey])" - Lines += entry + if (check_rights(R_ADMIN,0))//If they have +ADMIN, their ghost can see players IC names and statuses. + for(var/client/C in clients) + var/entry = "\t[C.key]" + if(C.holder && C.holder.fakekey) + entry += " (as [C.holder.fakekey])" + if (isobserver(src.mob)) + var/mob/dead/observer/G = src.mob + if(!G.started_as_observer)//If you aghost to do this, KorPhaeron will deadmin you in your sleep. + log_admin("[key_name(usr)] checked advanced who in-round") + entry += " - Playing as [C.mob.real_name]" + switch(C.mob.stat) + if(UNCONSCIOUS) + entry += " - Unconscious" + if(DEAD) + if(isobserver(C.mob)) + var/mob/dead/observer/O = C.mob + if(O.started_as_observer) + entry += " - Observing" + else + entry += " - DEAD" + else + entry += " - DEAD" + if(is_special_character(C.mob)) + entry += " - Antagonist" + entry += " (?)" + Lines += entry + else//If they don't have +ADMIN, only show hidden admins + for(var/client/C in clients) + var/entry = "\t[C.key]" + if(C.holder && C.holder.fakekey) + entry += " (as [C.holder.fakekey])" + Lines += entry else for(var/client/C in clients) if(C.holder && C.holder.fakekey) diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index 1320ae695c2..7fdf3adb2d7 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -264,7 +264,11 @@ M_job = "New player" else if(isobserver(M)) - M_job = "Ghost" + var/mob/dead/observer/O = M + if(O.started_as_observer)//Did they get BTFO or are they just not trying? + M_job = "Observer" + else + M_job = "Ghost" var/M_name = html_encode(M.name) var/M_rname = html_encode(M.real_name)