diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 2270685c0cf6..7fe5a1579b07 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -142,7 +142,8 @@ GLOBAL_LIST_INIT(admin_verbs_minor_event, list( /client/proc/toggle_hardcore_perma, /client/proc/toggle_bypass_joe_restriction, /client/proc/toggle_joe_respawns, - /datum/admins/proc/open_shuttlepanel + /datum/admins/proc/open_shuttlepanel, + /client/proc/get_whitelisted_clients, )) GLOBAL_LIST_INIT(admin_verbs_major_event, list( diff --git a/code/modules/admin/tabs/event_tab.dm b/code/modules/admin/tabs/event_tab.dm index fa0f43780031..332f7185fd57 100644 --- a/code/modules/admin/tabs/event_tab.dm +++ b/code/modules/admin/tabs/event_tab.dm @@ -42,6 +42,23 @@ CEI.handle_event_info_update(faction) +/client/proc/get_whitelisted_clients() + set name = "Find Whitelisted Players" + set category = "Admin.Events" + if(!admin_holder) + return + + var/flag = tgui_input_list(src, "Which flag?", "Whitelist Flags", GLOB.bitfields["whitelist_status"]) + + var/list/ckeys = list() + for(var/client/test_client in GLOB.clients) + if(test_client.check_whitelist_status(GLOB.bitfields["whitelist_status"][flag])) + ckeys += test_client.ckey + if(!length(ckeys)) + to_chat(src, SPAN_NOTICE("There are no players with that whitelist online")) + return + to_chat(src, SPAN_NOTICE("Whitelist holders: [ckeys.Join(", ")].")) + /client/proc/change_security_level() if(!check_rights(R_ADMIN)) return