From e212b4170b261f633008fdbb097b64f8eb64f5e6 Mon Sep 17 00:00:00 2001 From: DJSnapshot Date: Mon, 17 Nov 2014 02:23:04 -0800 Subject: [PATCH] R_HOST is now a thing. Also allows gives headmins a global note remove. --- code/modules/admin/admin.dm | 17 +++++++++++++++-- code/modules/admin/admin_ranks.dm | 2 +- code/setup.dm | 5 ++--- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 98db047b88..a9dd96241d 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -281,7 +281,7 @@ var/global/floorIsLava = 0 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") + if(I.author == usr.key || I.author == "Adminbot" || ishost(usr)) dat += "Remove" dat += "

" if(update_file) info << infos @@ -1146,7 +1146,20 @@ var/global/floorIsLava = 0 return "[key_name(C, link, name, highlight_special)](VV)(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 a9e428953b..90c5cc0f6a 100644 --- a/code/modules/admin/admin_ranks.dm +++ b/code/modules/admin/admin_ranks.dm @@ -37,7 +37,7 @@ 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 + 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("sound","sounds") rights |= R_SOUNDS if("spawn","create") rights |= R_SPAWN if("mod") rights |= R_MOD diff --git a/code/setup.dm b/code/setup.dm index 4b64a0821e..566f99f724 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -629,10 +629,9 @@ var/list/liftable_structures = list(\ #define R_SPAWN 4096 #define R_MOD 8192 #define R_MENTOR 16384 +#define R_HOST 32768 -#define R_MAXPERMISSION 16384 //This holds the maximum value for a permission. It is used in iteration, so keep it updated. - -#define R_HOST 65535 +#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