ID:861827
 
(See the best response by Darker Legends.)
Code:
    Make_GM(mob/M as mob in world)
set category = "Owner"
switch(alert(src, "What kind of GM would you like to give this person?","Give GM","Co Owner","Admin","TM"))
switch(input("")in list("Co Owner","GM1","GM2"))
if("Co Owner")
M.IsGM=1
src.verbs += typesof(/mob/GM2/verb)
src.verbs += typesof(/mob/GM3/verb)
src.verbs += typesof(/mob/GM1/verb)
src.verbs += typesof(/mob/TM/verb)
src.Hearall = 1
if("GM2")
M.IsGM=1
src.verbs += typesof(/mob/GM1/verb)
src.verbs += typesof(/mob/TM/verb)
src.verbs += typesof(/mob/GM2/verb)
src.Hearall = 1
if("GM1")
M.IsGM=1
src.verbs += typesof(/mob/GM1/verb)
src.verbs += typesof(/mob/TM/verb)
src.Hearall = 1


Problem description:
It works but the user doesn't get the GM verbs
src in this case is the one using the verb. You'd want to give M the verbs.
Technically the user DOES get the GM verbs btw. User is the thing calling a verb.
oh dat was Stupid of me -______-
i but it doesnt show
Best response
You have two switch statements, and you're using alert wrong.
O_O darker helped me
Code:
    Make_GM(mob/M as mob in world)
set category = "Owner"
switch(alert(src, "What kind of GM would you like to give this person?","Give GM","Co Owner","GM2","GM1"))
if("Co Owner")
src.IsGM=1
src.verbs += typesof(/mob/GM2/verb)
src.verbs += typesof(/mob/GM3/verb)
src.verbs += typesof(/mob/GM1/verb)
src.verbs += typesof(/mob/TM/verb)
src.Hearall = 1
world<<"<small><b><font color = green>GM:</font></b> [usr.name] has just given [M.name] Co_Owner powers!</small>"
if("GM2")
src.IsGM=1
src.verbs += typesof(/mob/GM1/verb)
src.verbs += typesof(/mob/TM/verb)
src.verbs += typesof(/mob/GM2/verb)
src.Hearall = 1
world<<"<small><b><font color = green>GM:</font></b> [usr.name] has just given [M.name] Admin powers!</small>"
if("GM1")
src.IsGM=1
src.verbs += typesof(/mob/GM1/verb)
src.verbs += typesof(/mob/TM/verb)
src.Hearall = 1
world<<"<small><b><font color = green>GM:</font></b> [usr.name] has just given [M.name] GM powers!</small>"


Problem description:
Same thing :/
Same problem. LordAndrew told you how to solve it, and you did the opposite.
Thanks
Here's the confusing part:
mob
verb/test1(mob/m)
world << "test1()"
world << " src: [src]"
world << " usr: [usr]"
world << " m: [m]"

verb/test2()
set src in view()
world << "test2()"
world << " src: [src]"
world << " usr: [usr]"

Both use proper syntax for choosing an object for use with a verb. The confusing part:
For test1(), src and usr are always the same (the verb typer/clicker) and m is always the target.
For test2(), src is always the target, and usr is always the player who typed the verb or clicked it in a statpanel or context menu.
In response to Kaiochao (#10)
You're using set src in view(), which changes the src to whatever's in view. This is often used for NPCs, so you can talk to them when you get close.
Are the verbs suppose to go away when they log out cause it does :/
In response to The Evil Marik (#12)
Since isGM is saved, you can check that after loading and add the verbs again. You could set it more specifically to let the verb rebuilding procedure know which verbs to add. i.e. set isGM to "GM1" instead of just 1.
ok
but does that mean next time they login if i give them Co
they only get GM3 set
In response to The Evil Marik (#15)
When you give them co, set isGM to "co". Same for the other types. Variables are flexible.
ook