ID:2458185
 
Code:
mob/Login()
..()
GM
if(key = Supreme_Being)
usr.verbs += /mob/Admin/verb/Delete
usr.verbs += /mob/Admin/verb/Delete1
usr.verbs += /mob/Admin/verb/Delete2
usr.verbs += /mob/Admin/verb/Teleport
usr.verbs += /mob/Admin/verb/Big_Boot
usr.verbs += /mob/Admin/verb/Create
usr.verbs += /mob/Admin/verb/Summon
usr.verbs += /mob/Admin/verb/Go_To_Mob
usr.verbs += /mob/Admin/verb/Go_To_Obj
usr.verbs += /mob/Admin/verb/Boot
usr.verbs += /mob/Admin/verb/Server_End
usr.verbs += /mob/Admin/verb/Reboot
usr.verbs += /mob/Admin/verb/AddGM
usr.verbs += /mob/Admin/verb/RemoveGM
usr.verbs += /mob/Admin/verb/AdminCheck
else
..()


Problem description:
Using Mellifluous base as I learn the ins and outs of DM.

I have defined Supreme_Being as my key. I have tried others, if(ckey/usr.key/etc.) I also don't have all the language down pat but...

1. The Admin verbs are coming up as restricted 'Unrecognized or inaccessible'. They are clearly in the code.

2. To add these verbs to a statpanel, should it look like this?
mob/Admin/Stat()/statpanel("Administration")/stat(src)/verb
Delete(O as obj in oview())
set category = ("Administration")
set name = ("Delete Object")
del(O)

Or does the statpanel belong somewhere else?

The issue is you're using = instead of ==.

= is an assignment operator for setting one value to another.

== is a comparison operator for checking one value against another.

However, there's a few other issues with this, the first being the use of 'usr' inside of a proc (Login()), which in this case works, but can get unpredictable. You'll want to use 'src' here instead. See Dream Tutor: usr Unfriendly for more information.

The next is that you have the 'GM' label in Login() but don't need it, that syntax is for usage with things like 'goto' and 'continue', you can get rid of that and back everything up a tab block in the code.

Next you don't need the 'else' part at all (it's not formatted correctly anyways), you're calling ..() outside of the conditional so it's not needed further down.

You can also replace the entire block of manual additions with something like

src.verbs += typesof(/mob/Admin/verb)


This is all assuming you have the "Supreme_Being" variable properly defined somewhere.

As for the Stat() thing, I have no idea what you're after, but I assume you just want it to show the commands in tabs, this is done automatically for visible verbs you have access to by the info control (which also handles statpanels).
Dumb as a brick --

Moved some files around to their proper locations. I am still working on this and may be back with an answer or more questions.
Okay... here we are. Everything is together and compiled and I am able to Run.

mob
step_size = 8
icon = 'White Female.dmi'
Login()
loc = locate(/turf/start)
world << "Opening messages."
if(src.key == "Keynote Speaker")
src.verbs += (/mob/Admin/verb)
..()
Stat()
statpanel("User")
stat(src)
verb

Say(msg as text)
set src in view()
set category = "Commands"
world << "[usr] says, [msg]"
Emote(msg as text)
set category = "Commands"
set src in view()
world << "*[usr] [msg]*"
UserCheck()
usr <<"Are you sure about this?"


I am still not receiving the verbs under the same error as before, unrecognized or inaccessible. I have added a UserCheck here in the same vein as AdminCheck so that I know it isn't an issue with the verb itself.
You forgot the typesof() part, you also have ..() outside of Login(), but since you're setting loc, you don't actually need it anyways.
I followed the method here and it worked:
http://www.byond.com/forum/post/157590

I am still not certain why the other method would not work, but it is probably as you pointed out.

I am a little confused about why procs need to repeat in cases like this, but I hope to keep practicing so I can find out soon!
Keynote Speaker wrote:
Code:
mob/Login()
> ..()
> GM // this is your problem.
> if(key = Supreme_Being)
> usr.verbs += /mob/Admin/verb/Delete
> usr.verbs += /mob/Admin/verb/Delete1
> usr.verbs += /mob/Admin/verb/Delete2
> usr.verbs += /mob/Admin/verb/Teleport
> usr.verbs += /mob/Admin/verb/Big_Boot
> usr.verbs += /mob/Admin/verb/Create
> usr.verbs += /mob/Admin/verb/Summon
> usr.verbs += /mob/Admin/verb/Go_To_Mob
> usr.verbs += /mob/Admin/verb/Go_To_Obj
> usr.verbs += /mob/Admin/verb/Boot
> usr.verbs += /mob/Admin/verb/Server_End
> usr.verbs += /mob/Admin/verb/Reboot
> usr.verbs += /mob/Admin/verb/AddGM
> usr.verbs += /mob/Admin/verb/RemoveGM
> usr.verbs += /mob/Admin/verb/AdminCheck
> else
> ..()
>

Problem description:
Using Mellifluous base as I learn the ins and outs of DM.

I have defined Supreme_Being as my key. I have tried others, if(ckey/usr.key/etc.) I also don't have all the language down pat but...

1. The Admin verbs are coming up as restricted 'Unrecognized or inaccessible'. They are clearly in the code.

2. To add these verbs to a statpanel, should it look like this?
mob/Admin/Stat()/statpanel("Administration")/stat(src)/verb
> Delete(O as obj in oview())
> set category = ("Administration")
> set name = ("Delete Object")
> del(O)

Or does the statpanel belong somewhere else?


I marked in your code the problem. you are calling GM inside Login(). you need to change the first 3 lines to this for the old version to work.

mob
Login()
..()
GM
Login()
..()


I could be wrong but that should fix the issue.
however the way you changed it to is more effective.