diff options
Diffstat (limited to 'world/map')
-rw-r--r-- | world/map/conf/permissions.txt | 1 | ||||
-rw-r--r-- | world/map/npc/commands/_import.txt | 1 | ||||
-rw-r--r-- | world/map/npc/commands/npctalk.txt | 23 |
3 files changed, 25 insertions, 0 deletions
diff --git a/world/map/conf/permissions.txt b/world/map/conf/permissions.txt index 812c3848..db9da9c6 100644 --- a/world/map/conf/permissions.txt +++ b/world/map/conf/permissions.txt @@ -11,6 +11,7 @@ CMD_REMOTECMD 40 CMD_WARP 40 CMD_CHARWARP 60 CMD_MUTE 60 +CMD_NPCTALK 40 // special permissions below MAP_LOUNGE 20 // level to enter the GM Lounge & talk to Numa diff --git a/world/map/npc/commands/_import.txt b/world/map/npc/commands/_import.txt index 4585c052..90cdb5b5 100644 --- a/world/map/npc/commands/_import.txt +++ b/world/map/npc/commands/_import.txt @@ -11,3 +11,4 @@ npc: npc/commands/remotecmd.txt npc: npc/commands/hug.txt npc: npc/commands/warp.txt npc: npc/commands/mute.txt +npc: npc/commands/npctalk.txt diff --git a/world/map/npc/commands/npctalk.txt b/world/map/npc/commands/npctalk.txt new file mode 100644 index 00000000..215e91ca --- /dev/null +++ b/world/map/npc/commands/npctalk.txt @@ -0,0 +1,23 @@ +-|script|@npctalk|32767 +{ + callfunc "argv_splitter"; + if (GM < CMD_NPCTALK && GM < G_SYSOP) goto L_GM; + if (@argv$[0] == "" || @argv$[1] == "") goto L_Failed; + if (getnpcid(@argv$[0]) < 1) goto L_Failed; + + gmlog "@npctalk " + @args$; + npctalk @argv$[0], @argv$[1]; + end; + +L_Failed: + message strcharinfo(0), "npctalk : Impossible to attach to the target npc. Did you try putting the name in \"quotation marks\"?"; + end; + +L_GM: + message strcharinfo(0), "npctalk : GM command is level "+ CMD_NPCTALK +", but you are level " + GM; + end; + +OnInit: + registercmd chr(ATCMD_SYMBOL) + "npctalk", strnpcinfo(0); + end; +} |