diff --git a/code/__HELPERS/type2type.dm b/code/__HELPERS/type2type.dm index ed838114fa8..6d8c6d0f434 100644 --- a/code/__HELPERS/type2type.dm +++ b/code/__HELPERS/type2type.dm @@ -288,9 +288,8 @@ proc/tg_list2text(list/list, glue=",") if (rights & R_SOUNDS) . += "[seperator]+SOUND" if (rights & R_SPAWN) . += "[seperator]+SPAWN" if (rights & R_MOD) . += "[seperator]+MODERATOR" - if (rights & R_MENTOR) . += "[seperator]+MENTOR" - if (rights & R_DEV) . += "[seperator]+DEVELOPER" - if (rights & R_CCIAA) . += "[seperator]+CCIAA" + if (rights & R_DEV) . += "[seperator]+DEVELOPER" + if (rights & R_CCIAA) . += "[seperator]+CCIAA" return . /proc/ui_style2icon(ui_style) diff --git a/code/game/verbs/who.dm b/code/game/verbs/who.dm index 257c01c3bea..44c1fecd1fa 100644 --- a/code/game/verbs/who.dm +++ b/code/game/verbs/who.dm @@ -62,17 +62,15 @@ var/msg = "" var/modmsg = "" - var/mentmsg = "" var/cciaamsg = "" var/devmsg = "" var/num_mods_online = 0 var/num_admins_online = 0 - var/num_mentors_online = 0 var/num_cciaa_online = 0 var/num_devs_online = 0 if(holder) for(var/client/C in admins) - if(R_ADMIN & C.holder.rights || (!R_MOD & C.holder.rights && !R_MENTOR & C.holder.rights)) //Used to determine who shows up in admin rows + if(R_ADMIN & C.holder.rights || (!R_MOD & C.holder.rights)) //Used to determine who shows up in admin rows if(C.holder.fakekey && (!R_ADMIN & holder.rights && !R_MOD & holder.rights)) //Mentors can't see stealthmins continue @@ -109,20 +107,6 @@ modmsg += "\n" num_mods_online++ - else if(R_MENTOR & C.holder.rights) - mentmsg += "\t[C] is a [C.holder.rank]" - if(isobserver(C.mob)) - mentmsg += " - Observing" - else if(istype(C.mob,/mob/new_player)) - mentmsg += " - Lobby" - else - mentmsg += " - Playing" - - if(C.is_afk()) - mentmsg += " (AFK)" - mentmsg += "\n" - num_mentors_online++ - else if (R_CCIAA & C.holder.rights) cciaamsg += "\t[C]" if (isobserver(C.mob)) @@ -153,16 +137,13 @@ else for(var/client/C in admins) - if(R_ADMIN & C.holder.rights || (!R_MOD & C.holder.rights && !R_MENTOR & C.holder.rights)) + if(R_ADMIN & C.holder.rights || (!R_MOD & C.holder.rights)) if(!C.holder.fakekey) msg += "\t[C] is a [C.holder.rank]\n" num_admins_online++ else if (R_MOD & C.holder.rights) modmsg += "\t[C] is a [C.holder.rank]\n" num_mods_online++ - else if (R_MENTOR & C.holder.rights) - mentmsg += "\t[C] is a [C.holder.rank]\n" - num_mentors_online++ else if(C.holder.rights & R_DEV) devmsg += "\t[C] is a [C.holder.rank]\n" num_devs_online++ @@ -177,9 +158,6 @@ if(config.show_mods) msg += "\n Current Moderators ([num_mods_online]):\n" + modmsg - if(config.show_mentors) - msg += "\n Current Mentors ([num_mentors_online]):\n" + mentmsg - if (config.show_auxiliary_roles) if (num_cciaa_online) msg += "\n Current CCIA Agents ([num_cciaa_online]):\n" + cciaamsg diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 4205572a29f..508edb03fd2 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -314,7 +314,7 @@ proc/admin_notice(var/message, var/rights) I.rank = "N/A" update_file = 1 dat += "[I.content] by [I.author] ([I.rank]) on [I.timestamp] " - if(I.author == usr.key || I.author == "Adminbot" || ishost(usr)) + if(I.author == usr.key || I.author == "Adminbot") dat += "Remove" dat += "

" if(update_file) info << infos @@ -1277,20 +1277,6 @@ proc/admin_notice(var/message, var/rights) H.regenerate_icons() -/* - helper proc to test if someone is a mentor or not. Got tired of writing this same check all over the place. -*/ -/proc/is_mentor(client/C) - - if(!istype(C)) - return 0 - if(!C.holder) - return 0 - - if(C.holder.rights == R_MENTOR) - return 1 - return 0 - /proc/get_options_bar(whom, detail = 2, name = 0, link = 1, highlight_special = 1) if(!whom) return "(*null*)" @@ -1323,22 +1309,6 @@ proc/admin_notice(var/message, var/rights) var/ref_mob = "\ref[M]" return "[key_name(C, link, name, highlight_special)] (?) (PP) (VV) (SM) (JMP)" - -/proc/ishost(whom) - if(!whom) - return 0 - var/client/C - var/mob/M - if(istype(whom, /client)) - C = whom - if(istype(whom, /mob)) - M = whom - C = M.client - if(R_HOST & C.holder.rights) - return 1 - else - return 0 -// // //ALL DONE //********************************************************************************************************* diff --git a/code/modules/admin/admin_ranks.dm b/code/modules/admin/admin_ranks.dm index 28de1783f22..27eb8b6d3f3 100644 --- a/code/modules/admin/admin_ranks.dm +++ b/code/modules/admin/admin_ranks.dm @@ -37,11 +37,10 @@ var/list/admin_ranks = list() //list of all ranks with associated rights if("stealth") rights |= R_STEALTH if("rejuv","rejuvinate") rights |= R_REJUVINATE if("varedit") rights |= R_VAREDIT - if("everything","host","all") rights |= (R_HOST | R_BUILDMODE | R_ADMIN | R_BAN | R_FUN | R_SERVER | R_DEBUG | R_PERMISSIONS | R_POSSESS | R_STEALTH | R_REJUVINATE | R_VAREDIT | R_SOUNDS | R_SPAWN | R_MOD| R_MENTOR) + if("everything","host","all") rights |= (R_BUILDMODE | R_ADMIN | R_BAN | R_FUN | R_SERVER | R_DEBUG | R_PERMISSIONS | R_POSSESS | R_STEALTH | R_REJUVINATE | R_VAREDIT | R_SOUNDS | R_SPAWN | R_MOD) if("sound","sounds") rights |= R_SOUNDS if("spawn","create") rights |= R_SPAWN if("mod") rights |= R_MOD - if("mentor") rights |= R_MENTOR if("developer") rights |= R_DEV if("cciaa") rights |= R_CCIAA diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 507b38504fc..941706570d3 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -293,17 +293,6 @@ var/list/admin_verbs_mod = list( /datum/admins/proc/paralyze_mob ) -var/list/admin_verbs_mentor = list( - /client/proc/cmd_admin_pm_context, - /client/proc/cmd_admin_pm_panel, - /datum/admins/proc/PlayerNotes, - /client/proc/admin_ghost, - /client/proc/cmd_mod_say, - /datum/admins/proc/show_player_info, -// /client/proc/dsay, - /client/proc/cmd_admin_subtle_message -) - var/list/admin_verbs_dev = list( //will need to be altered - Ryan784 ///datum/admins/proc/restart, /datum/admins/proc/spawn_atom, //allows us to spawn instances, @@ -373,7 +362,6 @@ var/list/admin_verbs_cciaa = list( if(holder.rights & R_SOUNDS) verbs += admin_verbs_sounds if(holder.rights & R_SPAWN) verbs += admin_verbs_spawn if(holder.rights & R_MOD) verbs += admin_verbs_mod - if(holder.rights & R_MENTOR) verbs += admin_verbs_mentor if(holder.rights & R_DEV) verbs += admin_verbs_dev if(holder.rights & R_CCIAA) verbs += admin_verbs_cciaa @@ -438,8 +426,6 @@ var/list/admin_verbs_cciaa = list( if(istype(mob,/mob/dead/observer)) //re-enter var/mob/dead/observer/ghost = mob - if(!is_mentor(usr.client)) - ghost.can_reenter_corpse = 1 if(ghost.can_reenter_corpse) ghost.reenter_corpse() else diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index 51eea2ebbb7..ee5907eb65b 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -367,8 +367,7 @@ if(usr.client) - var/client/C = usr.client - if(is_mentor(C)) + if(!check_rights(R_MOD|R_ADMIN, 0)) dat += {" N/A "} else switch(is_special_character(M)) diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 4c13cf6f00c..7076b892c69 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -1177,7 +1177,7 @@ show_player_panel(M) else if(href_list["adminplayerobservejump"]) - if(!check_rights(R_MENTOR|R_MOD|R_ADMIN)) return + if(!check_rights(R_MOD|R_ADMIN)) return var/mob/M = locate(href_list["adminplayerobservejump"]) diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm index 41b6d09eff5..162fc5e3918 100644 --- a/code/modules/admin/verbs/adminhelp.dm +++ b/code/modules/admin/verbs/adminhelp.dm @@ -97,19 +97,16 @@ var/list/adminhelp_ignored_words = list("unknown","the","a","an","of","monkey"," //Options bar: mob, details ( admin = 2, undibbsed admin = 3, mentor = 4, character name (0 = just ckey, 1 = ckey and character name), link? (0 no don't make it a link, 1 do so), // highlight special roles (0 = everyone has same looking name, 1 = antags / special roles get a golden name) - var/mentor_msg = "\blue Request for Help: [get_options_bar(mob, 4, 1, 1, 0)][ai_cl]: [msg]" msg = "\blue Request for Help:: [get_options_bar(mob, 3, 1, 1)][ai_cl]: [msg]" var/admin_number_afk = 0 for(var/client/X in admins) - if((R_ADMIN|R_MOD|R_MENTOR) & X.holder.rights) + if((R_ADMIN|R_MOD) & X.holder.rights) if(X.is_afk()) admin_number_afk++ if(X.prefs.toggles & SOUND_ADMINHELP) X << 'sound/effects/adminhelp.ogg' - if(X.holder.rights == R_MENTOR) - X << mentor_msg // Mentors won't see coloring of names on people with special_roles (Antags, etc.) else X << msg diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 2bf0907909e..263ad345191 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -115,7 +115,7 @@ //check client/X is an admin and isn't the sender or recipient if(X == C || X == src) continue - if(X.key != key && X.key != C.key && (X.holder.rights & R_ADMIN|R_MOD|R_MENTOR|R_DEV)) + if(X.key != key && X.key != C.key && (X.holder.rights & R_ADMIN|R_MOD)) X << "" + create_text_tag("pm_other", "PM:", X) + " [key_name(src, X, 0)] to [key_name(C, X, 0)]: [msg]" /client/proc/cmd_admin_irc_pm(sender) diff --git a/code/modules/admin/verbs/adminsay.dm b/code/modules/admin/verbs/adminsay.dm index fc7b80d0b86..41dee0af1d1 100644 --- a/code/modules/admin/verbs/adminsay.dm +++ b/code/modules/admin/verbs/adminsay.dm @@ -21,7 +21,7 @@ set name = "Msay" set hidden = 1 - if(!check_rights(R_ADMIN|R_MOD|R_MENTOR)) return + if(!check_rights(R_ADMIN|R_MOD)) return msg = sanitize(msg) log_admin("MOD: [key_name(src)] : [msg]") diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index b5bbdb8b69f..7f7304569ff 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -82,7 +82,7 @@ var/msg = "" var/highlight_special_characters = 1 - if(is_mentor(usr.client)) + if(!check_rights(R_MOD|R_ADMIN, 0)) highlight_special_characters = 0 for(var/client/C in clients) diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index 63f60c6f239..0008640c9f6 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -244,19 +244,19 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(!client) return - var/mentor = is_mentor(usr.client) - if(!config.antag_hud_allowed && (!client.holder || mentor)) + var/aux_staff = check_rights(R_MOD|R_ADMIN, 0) + if(!config.antag_hud_allowed && (!client.holder || aux_staff)) src << "\red Admins have disabled this for this round." return var/mob/dead/observer/M = src if(jobban_isbanned(M, "AntagHUD")) src << "\red You have been banned from using this feature" return - if(config.antag_hud_restricted && !M.has_enabled_antagHUD && (!client.holder || mentor)) + if(config.antag_hud_restricted && !M.has_enabled_antagHUD && (!client.holder || aux_staff)) var/response = alert(src, "If you turn this on, you will not be able to take any part in the round.","Are you sure you want to turn this feature on?","Yes","No") if(response == "No") return M.can_reenter_corpse = 0 - if(!M.has_enabled_antagHUD && (!client.holder || mentor)) + if(!M.has_enabled_antagHUD && (!client.holder || aux_staff)) M.has_enabled_antagHUD = 1 if(M.antagHUD) M.antagHUD = 0 diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index 4f55f3d55b4..86228ec9f38 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -540,7 +540,7 @@ proc/is_blind(A) name = realname for(var/mob/M in player_list) - if(M.client && ((!istype(M, /mob/new_player) && M.stat == DEAD) || (M.client.holder && !is_mentor(M.client))) && (M.client.prefs.toggles & CHAT_DEAD)) + if(M.client && ((!istype(M, /mob/new_player) && M.stat == DEAD) || (M.client.holder && !check_rights(R_MOD|R_ADMIN, 0, M))) && (M.client.prefs.toggles & CHAT_DEAD)) var/follow var/lname if(subject) diff --git a/code/setup.dm b/code/setup.dm index c821ed291da..6290afe4b4e 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -537,12 +537,10 @@ #define R_SOUNDS 2048 #define R_SPAWN 4096 #define R_MOD 8192 -#define R_MENTOR 16384 -#define R_DEV 18432 //needed a number in between 16k and 32k, so 16384+2048 -#define R_HOST 32768 //leaving this here -#define R_CCIAA 65535 //CAN'T BE ABOVE 65535 OR BORKS, stupid bitmasks -Ryan784 +#define R_DEV 16384 //needed a number in between 16k and 32k, so 16384+2048 +#define R_CCIAA 32768 //CAN'T BE ABOVE 65535 OR BORKS, stupid bitmasks -Ryan784 -#define R_MAXPERMISSION 65535 // This holds the maximum value for a permission. It is used in iteration, so keep it updated. +#define R_MAXPERMISSION 32768 // This holds the maximum value for a permission. It is used in iteration, so keep it updated. // Preference toggles. #define SOUND_ADMINHELP 1