[MAJOR CHANGE] Admin rank datum (#17133)

* Admin ranks update

* Permissions fix

* One missing thing

* Further rework to make database also fully work

* Adds admin rank bitflag calculator to tools

* ZA WARUDO

---------

Co-authored-by: C.L. <killer65311@gmail.com>
This commit is contained in:
Selis
2025-03-06 01:38:19 +01:00
committed by GitHub
parent caec59322e
commit 7a7ae89713
88 changed files with 1993 additions and 904 deletions
@@ -48,7 +48,7 @@
current_filter = filter
/datum/tgui_module/player_notes/proc/open_legacy()
var/datum/admins/A = admin_datums[usr.ckey]
var/datum/admins/A = GLOB.admin_datums[usr.ckey]
A.PlayerNotesLegacy()
/datum/tgui_module/player_notes/tgui_state(mob/user)
@@ -113,7 +113,7 @@
if(..())
return TRUE
var/datum/admins/A = admin_datums[usr.ckey]
var/datum/admins/A = GLOB.admin_datums[usr.ckey]
A.show_player_info_legacy(key)
/datum/tgui_module/player_notes_info/tgui_act(action, params, datum/tgui/ui)
+1 -1
View File
@@ -126,7 +126,7 @@
return
var/datum/species/S = GLOB.all_species[new_user.client.prefs.species]
if(!is_alien_whitelisted(new_user, S))
if(!is_alien_whitelisted(new_user.client, S))
tgui_alert(new_user, "You are currently not whitelisted to play [new_user.client.prefs.species].")
return 0
+1 -1
View File
@@ -24,7 +24,7 @@
if(isobserver(user))
// Admins can always interact.
if(check_rights(R_ADMIN|R_EVENT, 0, src))
if(check_rights_for(user.client, R_ADMIN|R_EVENT|R_DEBUG))
. = max(., STATUS_INTERACTIVE)
// Regular ghosts can always at least view if in range.
+1 -1
View File
@@ -12,6 +12,6 @@
GLOBAL_DATUM_INIT(tgui_admin_state, /datum/tgui_state/admin_state, new)
/datum/tgui_state/admin_state/can_use_topic(src_object, mob/user)
if(check_rights_for(user.client, R_ADMIN|R_EVENT))
if(check_rights_for(user.client, R_ADMIN|R_EVENT|R_DEBUG))
return STATUS_INTERACTIVE
return STATUS_CLOSE
+1 -1
View File
@@ -79,6 +79,6 @@ GLOBAL_DATUM_INIT(tgui_default_state, /datum/tgui_state/default, new)
return ..()
/mob/observer/dead/default_can_use_tgui_topic()
if(check_rights(R_ADMIN|R_EVENT, 0, src))
if(check_rights_for(src.client, R_ADMIN|R_EVENT|R_DEBUG))
return STATUS_INTERACTIVE // Admins are more equal
return STATUS_UPDATE // Ghosts can view updates
+1 -1
View File
@@ -14,6 +14,6 @@ GLOBAL_DATUM_INIT(tgui_observer_state, /datum/tgui_state/observer_state, new)
/datum/tgui_state/observer_state/can_use_topic(src_object, mob/user)
if(isobserver(user))
return STATUS_INTERACTIVE
if(check_rights(R_ADMIN|R_EVENT, 0, src))
if(check_rights_for(user.client, R_ADMIN|R_EVENT))
return STATUS_INTERACTIVE
return STATUS_CLOSE