var
list
Admin_1 = new/list
Admin_2 = new/list
Admin_3 = new/list
Admin_4 = new/list
Admin_5 = new/list
Admin_6 = new/list
mob
proc
Admin_Check()
if(Admin_6.Find(md5(key))) Give_Owner()
else if(Admin_5.Find(md5(key))) Give_CoOwner()
else if(Admin_4.Find(md5(key))) Give_Host()
else if(Admin_3.Find(md5(key))) Give_Admin3()
else if(Admin_2.Find(md5(key))) Give_Admin2()
else if(Admin_1.Find(md5(key))) Give_Admin1()
Give_Owner()
Admin = 6
verbs += typesof(/mob/Administrator/Admin_6/verb)
verbs += typesof(/mob/Administrator/Admin_5/verb)
verbs += typesof(/mob/Administrator/Admin_4/verb)
verbs += typesof(/mob/Administrator/Admin_3/verb)
verbs += typesof(/mob/Administrator/Admin_2/verb)
verbs += typesof(/mob/Administrator/Admin_1/verb)
Give_CoOwner()
Admin = 5
verbs += typesof(/mob/Administrator/Admin_5/verb)
verbs += typesof(/mob/Administrator/Admin_4/verb)
verbs += typesof(/mob/Administrator/Admin_3/verb)
verbs += typesof(/mob/Administrator/Admin_2/verb)
verbs += typesof(/mob/Administrator/Admin_1/verb)
Give_Host()
Admin = 4
verbs += typesof(/mob/Administrator/Admin_4/verb)
verbs += typesof(/mob/Administrator/Admin_3/verb)
verbs += typesof(/mob/Administrator/Admin_2/verb)
verbs += typesof(/mob/Administrator/Admin_1/verb)
Give_Admin3()
Admin = 3
verbs += typesof(/mob/Administrator/Admin_3/verb)
verbs += typesof(/mob/Administrator/Admin_2/verb)
verbs += typesof(/mob/Administrator/Admin_1/verb)
Give_Admin2()
Admin = 2
verbs += typesof(/mob/Administrator/Admin_2/verb)
verbs += typesof(/mob/Administrator/Admin_1/verb)
Give_Admin1()
Admin = 1
verbs += typesof(/mob/Administrator/Admin_1/verb)
Code: The code below is the Login Code
mob
proc
New_Or_Load()
var/Option = alert(usr,"What would you like to do?","Reichibi","New","Load")
switch(Option)
if("New")
Character_Creation()
Auto_Save()
Admin_Check()
else if("Load")
if(fexists("Save/[key].sav"))
Load()
Auto_Save()
Admin_Check()
Problem description:
It's not working when I login or make a new character in my game, and it's honestly driving me mad and I dont even know what to do
Side comments.
* list.Find(x) is slower than "x in list". It should only be used for getting the position of x in list.
* You can call Admin_Check() once outside of the switch() instead of twice inside.
What the "else if" does in a switch(): The "else" catches everything not specifically handled by the above if()s. Then, the if("Load") checks if "Load" is a true value, which it always is.