tgstation/-tg-station — pull request #1002 by errorage (2013-07-22 17:25:07+00:00)
Title: Expands the max number of admin permission flags from 16 to 31

- Expands the maximum number of admin permission flags you can have from 16 to 31.

To test: add these debug lines somewhere:

//START COPY PASTE

mob/verb/give_allrights()
src.client.holder.rights = 393087

mob/verb/hasright()
var/hi = input(src,"Choose a file to access:","Download",null) as null|num
var/r = check_rights(hi, 1);
world << "[r]"

mob/verb/checkrights()
for(var/i = 0; i < 32; i++)
var/n = 1 << i
var/r = check_rights(n , 1);
world << "has right 2^[i] = [n]? [r]"

//END COPY PASTE

Start the game, run 'give allrights', which doesn't give all rights, but some of the rights. 128 and 131072 are missing. Then you can either run 'hasright' to check whether you have the permissions that correspond to a user defined number, or you can run 'checkrights' to check for all 31 theoretical permissions.