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 = "Player Menu" + dat += "" + //add to this if wanting to add back in IP checking + //add 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 += "" + if(isAI(M)) + dat += "" + else if(isrobot(M)) + dat += "" + else if(issmall(M)) + dat += "" + else if(ishuman(M)) + dat += "" + else if(istype(M, /mob/living/silicon/pai)) + dat += "" + else if(istype(M, /mob/new_player)) + dat += "" + else if(isobserver(M)) + dat += "" + else if(isalien(M)) + dat += "" + else + dat += "" + + + if(istype(M,/mob/living/carbon/human)) + var/mob/living/carbon/human/H = M + if(H.mind && H.mind.assigned_role) + dat += "" + else + dat += "" + + + dat += {" + + + "} + switch(is_special_character(M)) + if(0) + dat += {""} + if(1) + dat += {""} + if(2) + dat += {""} + + dat += "
NameReal NameAssigned JobKeyOptionsPMTraitor?
IP:(IP: [M.lastKnownIP])
[M.name]AICyborgMonkey[M.real_name]pAINew PlayerGhostAlienUnknown[H.mind.assigned_role]NA[(M.client ? "[M.client]" : "No client")]XPMTraitor?Traitor?Traitor?
" + + usr << browse(dat, "window=players;size=640x480") + + /datum/admins/proc/check_antagonists_line(mob/M, caption = "", close = 1) var/logout_status