diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 82c5d937cda..1c4d569507e 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -10,6 +10,7 @@ var/list/admin_verbs_default = list( var/list/admin_verbs_admin = list( /client/proc/check_antagonists, /*shows all antags*/ /datum/admins/proc/show_player_panel, + /client/proc/player_panel, /*shows an interface for all players, with links to various panels (old style)*/ /client/proc/player_panel_new, /*shows an interface for all players, with links to various panels*/ /client/proc/invisimin, /*allows our mob to go invisible/visible*/ /datum/admins/proc/toggleenter, /*toggles whether people can join the current game*/ @@ -360,6 +361,17 @@ var/list/admin_verbs_ticket = list( to_chat(mob, "Invisimin on. You are now as invisible as a ghost.") mob.remove_from_all_data_huds() +/client/proc/player_panel() + set name = "Player Panel" + set category = null + + if(!check_rights(R_ADMIN)) + return + + holder.player_panel_old() + feedback_add_details("admin_verb","PP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + return + /client/proc/player_panel_new() set name = "Player Panel New" set category = "Admin" diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index 51a7f442fbc..9203477c7f9 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -328,6 +328,65 @@ usr << browse(dat, "window=players;size=600x480") +//The old one +/datum/admins/proc/player_panel_old() + if(!usr.client.holder) + return + var/dat = "
| Name | Real Name | Assigned Job | Key | Options | PM | Traitor? | IP: | to this if wanting to add back in IP checking + //add(IP: [M.lastKnownIP]) | if you want to know their ip to the lists below + var/list/mobs = sortmobs() + + for(var/mob/M in mobs) + if(!M.ckey) continue + + dat += "|||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| [M.name] | " + if(isAI(M)) + dat += "AI | " + else if(isrobot(M)) + dat += "Cyborg | " + else if(issmall(M)) + dat += "Monkey | " + else if(ishuman(M)) + dat += "[M.real_name] | " + else if(istype(M, /mob/living/silicon/pai)) + dat += "pAI | " + else if(istype(M, /mob/new_player)) + dat += "New Player | " + else if(isobserver(M)) + dat += "Ghost | " + else if(isalien(M)) + dat += "Alien | " + else + dat += "Unknown | " + + + if(istype(M,/mob/living/carbon/human)) + var/mob/living/carbon/human/H = M + if(H.mind && H.mind.assigned_role) + dat += "[H.mind.assigned_role] | " + else + dat += "NA | " + + + dat += {"[(M.client ? "[M.client]" : "No client")] | +X | +PM | + "} + switch(is_special_character(M)) + if(0) + dat += {"Traitor? | "} + if(1) + dat += {"Traitor? | "} + if(2) + dat += {"Traitor? | "} + + dat += "