summaryrefslogtreecommitdiff
path: root/npc/003-0-1/audsbel.txt
blob: 8964202ad3115d6008441614e8d3cddbd4779025 (plain) (blame)
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
// TMW2 scripts.
// Authors:
//    Jesusalva
// Description:
//    One of the Mana Magic Leaders
//    Planned, there are only the four Mana Wizards: Auldsbel (Tulimshar), Sagratha (Woodlands), Morgan (Candor), Blue Sage (Nivalis), Lalica (LoF).

//    Gives #parum
//    Gives #mkpot
//    TODO: Make dye? Make Lifestone?

003-0-1,81,27,0	script	Auldsbel	NPC_AULDSBEL,{
    mesn l("Auldsbel the Wizard");
    mesq l("Welcome back, Padric!");
    mesq l("Do you believe I've lost my @@? I can't see anything well without that! %%a", getitemlink(Googles));
    if (countitem(Googles))
        mesq l("I'm not interested in yours, by the way.");
    next;
    mesn;
    mesq l("Anyway, I am one of the few Mana Wizard, and I love Transmutation!");
    next;

L_Main:
    select
        rif(MAGIC_LVL, l("What's the difference from a Mana Wizard and a Mage?")),
        l("Who are you? Where are you from?"),
        rif(MAGIC_LVL, l("How do I advance in Mana Magic? How it works?")),
        rif(MAGIC_LVL, l("What do you know about other Mana Magic Professors?")),
        rif(MAGIC_LVL, l("Can you teach me Mana Magic?")),
        l("Do you still need help with your experiments?"),
        l("Actually, I gotta go, see ya!");

    mes "";
    switch (@menu) {
        case 1: // What's the difference from a Mana Wizard and a Mage?
            if (MAGIC_LVL < 2) {
                mesn;
                mesn;
                mesq l("%%4 Haven't you read your Grimorium yet?!");
                next;
                mesn;
                mesq l("%%@ You can get Magic by joining class and subclass, and with some NPCs. These work out-of-box. Easy.");
                next;
                mesn;
                mesq l("And there is the Mana Magic, for the pro %%e You'll waste your life on that, as it have an experience system.");
                next;
                mesn;
                mesq l("%%G Just like normal magic, you need power from the Mana Stone, which is based on your levels, intelligence, and mana.");
                next;
                mesn;
                mesq l("I like Mana Magic the best, as we can both summon creatures as transmutate stuff. %%N");
                next;
            } else {
                mesn;
                mesq l("Well, long story short, we have two magic systems. One works out of box. The later one, is the Mana Magic.");
                next;
                mesn;
                mesq l("Mana Magic is less reliable and have an experience system. It's the most common for summoning and transmutation.");
                next;
                mesn;
                mesq l("I could explain this better, but you are just a noob at magic, if you understand me.");
                next;
            }
            mesn;
            mesq l("To be honest, you should use both. And remember, all Mana Magic skills can be used like they were @sk-commands. %%H");
            next;
            break;
        case 2: // Who are you? Where are you from?
            mesn;
            mesq l("Well, speaking a bit about myself can't hurt. I am a member from the Magic Council, but one day I decided to take a vacations.");
            next;
            mesn;
            mesq l("I moved to Hurnscald, stayed there for over a decade, until Lord Transmogrifier Pontorias the Plaid (May His Shape Reflect His Soul Forever) died.");
            next;
            mesn;
            mesq l("Then I returned to Tulimshar. Now I do research, vote on the Magic Council meetings, and I also teach young mages about Transmutation magic.");
            next;
            break;
        case 3: // How do I advance in Mana Magic? How it works?
            mesn;
            mesq l("Mana Magic works similar to regular magic: You can find it on your skill window, and can drag it to your shortcut list.");
            next;
            mesn;
            mesq l("To get more experience and magic power, you must practice magical spells.  Make sure to vary them; you will learn nothing if you cast the same spell over and over. Also, spells that consume no components seem not to be very instructive in practice.");
            next;
            mesn;
            mesq l("Usually, you can find magic on these buildings, but watch out, there is magic to be found elsewhere, and some items are bound with it!");
            next;
            mesn;
            mesq l("While on normal magic you must take care with all attributes, on mana magic, you usually only need to worry with reagents and intelligence.");
            next;
            mesn;
            mesq l("Also, unlike regular magic which may cause delay before and after, Mana Magic usually only have a cooldown. But it is hard to know how long that cooldown is..."); // We may use addtimer() on one or other spell.
            next;
            break;
        case 4: // What do you know about Sagratha?
            mesn;
            mesq l("Lemme see... Sagratha is often regarded as a kind and rather powerful elf lady mage... who hate people.");
            next;
            mesn;
            mesq l("And I'm not talking only about humans here! But perhaps, if you build a good reputation, she teaches you something.");
            next;
            mesn;
            mesq l("There's also Morgan, who lives in Candor. She is a Redy, and is married with Zitoni. They are great alchemists.");
            next;
            mesn;
            mesq l("By last, there was the Blue Sage, living on Nivalis... I never met him.");
            next;
            mesn;
            mesq l("As you see, you can count the mages with the fingers of one hand. It's not just Mana Magic, either - Magic in overall is almost dead, with almost every Mana Stone on the power of the Monster King.");
            next;
            mesn;
            mesq l("Defeating him would not only stop monster invasions, but it would also bring magic back... And probably another war, over the mana stones. %%S");
            next;
            break;
        // Teaching and helping are bound one to other, to save space on variable e.e
        case 5: // Can you teach me Mana Magic?
        case 6: // Do you still need help with your experiments?
            goto L_Magic;
            break;
        default: // Actually, I gotta go, see ya!
            goodbye;
            closedialog;
            close;
    }
    goto L_Main;

L_Magic:
    .@q=getq(General_Auldsbel);
    switch (.@q) {
    // Help on research to gain his favor
    case 0:
        mesn;
        mesq l("I actually need help. Padric and I were doing some research with catalysts, you see.");
        next;
        mesn;
        mesq l("Now I need 20 @@, 20 @@ and 60 @@ to finish my research. Easy materials, except for the Shadow Herb.", getitemlink(MauveHerb), getitemlink(ShadowHerb), getitemlink(SilkCocoon));
        next;
        mesn;
        mesq l("Shadow Herb only grows on dangerous places, and is mostly found on the Land Of Fire, or underground of very very deep caves.");
        next;
        select
            l("I'll try to find them."),
            l("I actually have them, here.");
        if (@menu == 2) {
            mes "";
            mesn;
            mesq l("Excellent! Let me see...");
            next;
            if (
                countitem(MauveHerb) < 20 ||
                countitem(ShadowHerb) < 20 ||
                countitem(SilkCocoon) < 60)
                    goto L_Lie;
            delitem MauveHerb, 20;
            delitem ShadowHerb, 20;
            delitem SilkCocoon, 60;
            getexp 2500, 0;
            Zeny=Zeny+250;
            setq General_Auldsbel, 1;
            mesn;
            mesq l("Yes, many thanks. This will help me a lot.");
            mesc l("Gained 2500 XP and 250 GP");
        }
        break;
    // Learn #parum
    case 1:
        if (MAGIC_LVL < 1)
            goto L_Magicless;
        mesn;
        mesq l("Hmm, I think I can teach you a basic Mana Skill now. That one is pretty simple.");
        next;
        skill(TMW2_PARUM,1,0);
        setq General_Auldsbel, 2;
        mesn;
        mesq l("This is the @@ skill. It transmutes a single @@ in a @@.", "##B@sk-parum##b", getitemlink(RawLog), getitemlink(MoubooFigurine));
        next;
        mesn;
        mesq l("It may also create some @@ or a @@, with enough skill.", getitemlink(Arrow), getitemlink(WoodenLog));
        next;
        mesn;
        mesq l("So! Please transmute a @@ and bring it to me. You may need to switch with another mana skill, until you are successful.", getitemlink(MoubooFigurine));
        break;
    // Bring the Mouboo figurine back
    case 2:
        mesn;
        mesq l("Have you managed to transmute the @@ I asked for?", getitemlink(MoubooFigurine));
        next;
        if (askyesno() == ASK_YES) {
            if (!countitem(MoubooFigurine)) goto L_Lie;
            if (!MAGIC_EXP) goto L_Lame;
            delitem MoubooFigurine, 1;
            getexp 5000, 0;
            setq General_Auldsbel, 3;
            mesn;
            mesq l("Very well - Congratulations! That was very easy, though, and this one is full of imperfections.");
            mesc l("Gained 5000 XP");
            next;
            mesn;
            mesq l("That skill was only to allow you to practice. Now listen well: Transmutation is ##BNOT##b crafting!");
            next;
            mesn;
            mesq l("Magic is sacred. With transmutation, you can create convenience items, specially reagents for other magic skills.");
            next;
            mesn;
            mesq l("But if you try to create equipment, assuming magic doesn't backfire, YOU WILL BE BANNED from this school, and lose your class. Permanently.");
            next;
            mesn;
            mesq l("This is just a friendly advise. We don't take magic lightly. And you shouldn't, either.");
        }
        break;
    // Help on research to gain his favor
    case 3:
        mesn;
        mesq l("I actually need help. I am a mage, and I'm feeling lazy to get the stuff I need.");
        next;
        mesn;
        mesq l("You don't seem to have anything better to do, anyway.");
        mesq l("Now please bring me @@/2 @@, @@/20 @@, @@/30 @@ and @@/70 @@ so I don't need to leave here and start travelling everywhere...", countitem(IcedBottle), getitemlink(IcedBottle), countitem(Root), getitemlink(Root), countitem(Potatoz), getitemlink(Potatoz), countitem(Moss), getitemlink(Moss));
        next;
        select
            l("I'll try to find them."),
            l("I actually have them, here.");
        if (@menu == 2) {
            mes "";
            mesn;
            mesq l("Excellent! Let me see...");
            next;
            if (
                countitem(IcedBottle)   <  2 ||
                countitem(Root)         < 20 ||
                countitem(Potatoz)      < 30 ||
                countitem(Moss)         < 70)
                    goto L_Lie;
            delitem IcedBottle,  2;
            delitem Root,       20;
            delitem Potatoz,    30;
            delitem Moss,       70;
            getexp 28692, 0;
            Zeny=Zeny+550;
            setq General_Auldsbel, 4;
            mesn;
            mesq l("Yes, many thanks. This will help me a lot.");
        }
        break;
    // Learn #mkpot
    case 4:
        if (MAGIC_LVL < 2)
            goto L_Magicless;
        mesn;
        mesq l("Hmm, I think I can teach you a basic Mana Skill now. This one is more advanced, though.");
        next;
        skill(TMW2_MKPOT,1,0);
        setq General_Auldsbel, 5;
        mesn;
        mesq l("This is the @@ skill. It transmutes @@ @@ and a single @@ in @@.", "##B@sk-mkpot##b", 10, getitemlink(Plushroom), getitemlink(Milk), getitemlink(HastePotion));
        next;
        mesn;
        mesq l("It may fail, and you might end up with something entirely unexpected!");
        next;
        mesn;
        mesq l("Unlike Parum, you can use the skill points you get every time your job level rises. That will lower the mana cost and increase success chances.");
        next;
        mesn;
        mesq l("But please be picky with how you spend job points. They are hard to come by, and I'm not entirely sure you can change it later.");
        next;
        mesn;
        mesq l("Also, job levels get really hard to obtain after a while. The decision is up to you, just be aware there's that possibility.");
        break;
    default:
        mesn;
        mesq l("Uhm, no, not really. Maybe later, who knows?");
        break;
    }
    next;
    goto L_Main;


// Fallbacks
L_Magicless:
    mesn;
    mesq l("Well, you helped me. That's great! One hand washes the other, so, I'm willing to share knowledge with you.");
    next;
    mesn;
    mesq l("But unless you touch a Mana Stone and get stronger magic, that would be as useful as teaching magic to a wall. No offense.");
    next;
    mesn;
    mesq l("So, please, come to me with stronger magic powers. And then, I'll teach you a new magic spell.");
    close;

L_Lie:
    mesn;
    mesq l("Really interesting, how I am NOT seeing the items I asked for...");
    next;
    mesn;
    mesq l("Say, what do you think if I transmuted your head into the missing materials? I can warrant your soul won't return to the Soul Menhir, either!");
    close;

L_Lame:
    setparam(MaxHp, readparam(MaxHp)-50); // I want to see how permanent this is
    setparam(MaxSp, readparam(MaxSp)-25); // I want to see how permanent this is
    //setparam(Karma, readparam(Karma)-1); // testing
    mesn;
    mesq l("%%3 You sadden me. That was so, so lame. I will need to punish you. Sorry. Superior orders. %%S");
    next;
    mesn strcharinfo(0);
    mesq l("%%i What, my maximum life and mana just decreased! Noooo!!");
    next;
    mesn;
    mesq l("%%1 Cheer up, these should go back to normal when you level up. Just don't do that again!");
    // If that is true or not, remains to be checked. Uh... I never used setparam() before! :D
    close;

OnInit:
    .sex=G_MALE;
    .distance=5;
    end;
}