1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
- script SuperDebug NPC32767,{
if (GM < MAP_LOUNGE && GM < G_SYSOP && !debug) goto L_GM2; // make sure you can enter the gm lounge
//if (target(BL_ID,getnpcid("Numa"),1)) goto L_Main;
//npcaction 6, 12;
title "Numa";
goto L_Main;
L_GM2:
message strcharinfo(0), "numa : GM command is level "+ MAP_LOUNGE +", but you are level " + GM;
end;
L_Main:
mes "How may I help you?";
next;
menu
"Announcements", L_StoneBoard,
"MOTD", L_MOTD,
"Holiday debug", L_Holiday,
"Event debug", L_Event,
"Quest debug", L_Quest,
"Who are you?", L_WhoAmI,
"Close", L_close;
// todo: generic npcs
// todo: map list
L_WhoAmI:
mes "I am Numa, also known as `SuperDebug`.";
mes "My sole purpose is to assist TMW staff from behind-the-scene.";
mes "Using me, you can access several debug menus.";
mes "You can call me from anywhere using the ##B@numa##b spell, or you can come see me in person.";
next;
goto L_Main;
L_Holiday:
if (GM < DBG_HOLIDAY && GM < G_SYSOP) goto L_GM;
mes "What holiday do you want to debug?";
next;
menu
"Xmas.", L_XmasDebug,
"Halloween.", L_HalloweenDebug,
"Easter.", L_EasterDebug;
// FIXME
L_XmasDebug:
gmlog strcharinfo(0) + " accessed the Xmas debug.";
callfunc "XmasDebug";
goto L_close;
// FIXME
L_HalloweenDebug:
gmlog strcharinfo(0) + " accessed the Halloween debug.";
callfunc "HalloweenDebug";
goto L_close;
// FIXME
L_EasterDebug:
gmlog strcharinfo(0) + " accessed the Easter debug.";
callfunc "Easter Debug";
goto L_close;
// FIXME
L_Event:
if (GM < EVT_DEBUG && GM < G_EVENT) goto L_GM;
gmlog strcharinfo(0) + " accessed the GM event debug.";
callfunc "GmDebug";
goto L_close;
L_StoneBoard:
if (GM < DBG_SCHEDULED && GM < G_SYSOP) goto L_GM;
callfunc "StoneBoard";
goto L_close;
// FIXME?
L_MOTD:
if (GM < DBG_MOTD && GM < G_SYSOP) goto L_GM;
callfunc "MOTDConfig";
goto L_close;
L_GM:
mes "I'm awfully sorry.";
mes "You do not have the required GM level to perform this action.";
goto L_close;
L_Quest:
callfunc "GlobalQuestDebug";
goto L_close;
L_close:
close;
OnInit:
registercmd "numa", strnpcinfo(0);
registercmd "superdebug", strnpcinfo(0);
end;
}
017-9,30,28,0 duplicate(SuperDebug) Numa NPC393
|