summaryrefslogtreecommitdiff
path: root/world/map/npc/007-1/voltain.txt
blob: 0366ea5c44272a61c307d43fada5d762ed3ce9d5 (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
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
// # NPC Name: Voltain
// # LEAD AUTHOR: Pjotr Orial
// # AUTHORS: MrDudle, tarq, Salmondine, Jenalya, Pjotr Orial
// # REVIEWERS: Jenalya
// #
// # Basic Idea: A Person with lots of dark minds requires different stuff.
// # Basically he tries to figure out, how to poison moobous, since he doesn't like the nature at all
// #
// # The variables are not attached to a player but to an npc variable, so it is more or less random, which
// # quest comes up, when a player asks him.
// #
// # used Variables: global variable $@VOLTAIN_state
// # 0: bring bottles
// # 1: bring black scorpion stinger
// # 2: bring bug legs
// # 3: bring another black scorpion stinger
// # 4: bring mauve herbs
// # 5: bring raw logs
// # 6: bring red apples
// # 7: bring cobalt herbs
// # 8: bring snake tongues
// # 9: bring alizarin herbs
// # 10: bring steak
// # 11: bring arrows
// # 12: bring gamboge herbs
// # 13: bring chocolate cake

007-1,37,21,0|script|Voltain|103
{
    set @BOTTLE_NEEDED,  3;
    set @BOTTLE_REWARD_XP,  100;
    set @BOTTLE_REWARD_GOLD,  450;

    set @BLACK_SC_ST_NEEDED,  5;
    set @BLACK_SC_ST_REWARD_XP,  500;
    set @BLACK_SC_ST_REWARD_GOLD,  250;

    set @BUGLEG_NEEDED,  10;
    set @BUGLEG_REWARD_XP,  200;
    set @BUGLEG_REWARD_GOLD,  150;

    set @HERBS_NEEDED,  7;
    set @HERBS_REWARD_XP,  200;
    set @HERBS_REWARD_GOLD,  250;

    set @RAWLOG_NEEDED,  5;
    set @RAWLOG_REWARD_XP,  330;
    set @RAWLOG_REWARD_GOLD,  300;

    set @REDAPPLE_NEEDED,  7;
    set @REDAPPLE_REWARD_XP,  330;
    set @REDAPPLE_REWARD_GOLD,  300;

    set @STEAK_NEEDED,  2;
    set @STEAK_REWARD_XP,  330;
    set @STEAK_REWARD_GOLD,  280;

    set @ARROW_NEEDED,  25;
    set @ARROW_REWARD_XP,  330;
    set @ARROW_REWARD_GOLD,  100;

    set @SNAKETONGUE_NEEDED,  3;
    set @SNAKETONGUE_REWARD_XP,  330;
    set @SNAKETONGUE_REWARD_GOLD,  100;

    set @CHOCOLATECAKE_NEEDED,  3;
    set @CHOCOLATECAKE_REWARD_XP,  330;
    set @CHOCOLATECAKE_REWARD_GOLD,  180;

    if ($@VOLTAIN_state == 1) goto L_state1;
    if ($@VOLTAIN_state == 2) goto L_state2;
    if ($@VOLTAIN_state == 3) goto L_state3;
    if ($@VOLTAIN_state == 4) goto L_state4;
    if ($@VOLTAIN_state == 5) goto L_state5;
    if ($@VOLTAIN_state == 6) goto L_state6;
    if ($@VOLTAIN_state == 7) goto L_state7;
    if ($@VOLTAIN_state == 8) goto L_state8;
    if ($@VOLTAIN_state == 9) goto L_state9;
    if ($@VOLTAIN_state == 10) goto L_state10;
    if ($@VOLTAIN_state == 11) goto L_state11;
    if ($@VOLTAIN_state == 12) goto L_state12;
    if ($@VOLTAIN_state == 13) goto L_state13;
//    default: trap through to L_state0!
    goto L_state0;

L_state0:
    mes "[Voltain]";
    mes "\"What are you doing bothering me? Can't you see I'm busy! Oh, I'm sorry, I thought you were my assistant. Never mind that... would you care to help me?\"";
    next;
    menu
        "Sure I do!", L_Next,
        "No, you creep me out.", L_NOHELP;

L_Next:
    mes "[Voltain]";
    mes "\"I'm working on a very special potion. I need some empty bottles to keep the ingredients in. Care to go find me " + @BOTTLE_NEEDED + " empty bottles?!\"";
    next;
    menu
        "I've got the bottles.", L_Next1,
        "I don't feel like helping you get garbage...", L_Close;

L_Next1:
    if (countitem("EmptyBottle") < @BOTTLE_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "EmptyBottle", @BOTTLE_NEEDED;
    set Zeny, Zeny + @BOTTLE_REWARD_GOLD;
    getexp @BOTTLE_REWARD_XP, 0;
    set $@VOLTAIN_state, 1;
    mes "\"Thanks for the bottles. Much easier to carry liquid in them.\"";
    goto L_Close;

L_state1:
    mes "[Voltain]";
    mes "\"I'm making a potion that requires lots of venom. I'm in need of " + @BLACK_SC_ST_NEEDED + " black scorpion stingers.\"";
    next;

    menu
        "I've got the stingers!", L_Next2,
        "I'll go search for them.", L_Close;

L_Next2:
    mes "[Voltain]";
    if (countitem("BlackScorpionStinger") < @BLACK_SC_ST_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "BlackScorpionStinger", @BLACK_SC_ST_NEEDED;
    set Zeny, Zeny + @BLACK_SC_ST_REWARD_GOLD;
    getexp @BLACK_SC_ST_REWARD_XP, 0;
    set $@VOLTAIN_state, 2;
    mes "\"Well, since you went to the trouble of getting me these here's a little something for your time...\"";
    goto L_Close;

L_state2:
    mes "[Voltain]";
    mes "\"Care to to help me with my potion? I need " + @BUGLEG_NEEDED + " bug legs so that I can thicken the potion.\"";
    next;
    menu
        "I've got the bug legs.", L_Next3,
        "I'd rather not carry around dead bugs for you.", L_NOHELP ;

L_Next3:
    mes "[Voltain]";
    if (countitem("BugLeg") < @BUGLEG_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "BugLeg", @BUGLEG_NEEDED;
    set Zeny, Zeny + @BUGLEG_REWARD_GOLD;
    getexp @BUGLEG_REWARD_XP, 0;
    set $@VOLTAIN_state, 3;
    mes "\"Great! My potion is ready to poison the moub...I mean cure scorpion stings. \"";
    goto L_Close;

L_state3:
    mes "[Voltain]";
    mes "\"I find myself in need of a black scorpion stinger... Damn mouboo are hard to kill...forget you heard that.\"";
    next;
    menu
        "Here's the stinger.", L_Next4,
        "I DID HEAR THAT! I will not help you KILL mouboo!", L_Close;

L_Next4:
    mes "[Voltain]";
    if (countitem("BlackScorpionStinger") < 1)
        goto L_NOT_ENOUGH;
    delitem "BlackScorpionStinger", 1;
    getexp @BLACK_SC_ST_REWARD_XP, 0;
    set $@VOLTAIN_state, 4;
    mes "\"Great! Now I can really kill that monster!\"";
    goto L_Close;

L_state4:
    mes "[Voltain]";
    mes "\"I need to thicken a veno.. Oh, a potion actually. I want to try mauve herbs for that, so can you bring me " + @HERBS_NEEDED + ", please?\"";
    next;
    menu
        "Here are the herbs.", L_Next5,
        "So you want to do a venom? I will not help you!", L_Close;

L_Next5:
    mes "[Voltain]";
    if (countitem("MauveHerb") < @HERBS_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "MauveHerb", @HERBS_NEEDED;
    getexp @HERBS_REWARD_XP, 0;
    set Zeny, Zeny + @HERBS_REWARD_GOLD;
    set $@VOLTAIN_state, 5;
    mes "\"Great! Now I can thicken the potion! I will try directly.\"";
    goto L_Close;

L_state5:
    mes "[Voltain]";
    mes "\"Hello I am looking for " + @RAWLOG_NEEDED + " raw logs, maybe you could help me getting some? I want to try to build a mouboo trap.. Uhm actually no! I want to build a device to destroy these traps. So can you help me?\"";
    next;
    menu
        "Here are the raw logs.", L_Next6,
        "So you want build traps for mouboos? NO WAY!", L_Close;

L_Next6:
    mes "[Voltain]";
    if (countitem("RawLog") < @RAWLOG_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "RawLog", @RAWLOG_NEEDED;
    getexp @RAWLOG_REWARD_XP, 0;
    set Zeny, Zeny + @RAWLOG_REWARD_GOLD;
    set $@VOLTAIN_state, 6;
    mes "\"Great! Now I can thicken the potion! I will try directly.\"";
    goto L_Close;

L_state6:
    mes "[Voltain]";
    mes "\"Hello I am looking for " + @REDAPPLE_NEEDED + " red apples, maybe I can inject some venoms.. DOH not this again! Of course I meant a strength potion. Did you hear about the new potions from Caul? He is a pretty good alchimist. He can do strength potions, can't he?\"";
    next;
    menu
        "Here are the red apples.", L_Next7,
        "I am not sure...", L_Close;

L_Next7:
    mes "[Voltain]";
    if (countitem("RedApple") < @REDAPPLE_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "RedApple", @REDAPPLE_NEEDED;
    getexp @REDAPPLE_REWARD_XP, 0;
    set Zeny, Zeny + @REDAPPLE_REWARD_GOLD;
    set $@VOLTAIN_state,7;
    mes "\"Very well, this will be useful.\"";
    goto L_Close;

L_state7:
    mes "[Voltain]";
    mes "\"I need to thicken a veno.. Oh, a potion actually. Cobalt herbs might be good for that, so can you bring me " + @HERBS_NEEDED + ", please?\"";
    next;
    menu
        "Here are the herbs.", L_Next8,
        "So you want to do a venom? I will not help you!", L_Close;

L_Next8:
    mes "[Voltain]";
    if (countitem("CobaltHerb") < @HERBS_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "CobaltHerb", @HERBS_NEEDED;
    getexp @HERBS_REWARD_XP, 0;
    set Zeny, Zeny + @HERBS_REWARD_GOLD;
    set $@VOLTAIN_state, 8;
    mes "\"Great! Now I can go on with the ven-  the experiments for the welfare of humanity, I mean.\"";
    goto L_Close;

L_state8:
    mes "[Voltain]";
    mes "\"I am in need of snake tongues. They can help me getting very strong venom extracts. So I would like you to bring me " + @SNAKETONGUE_NEEDED + " snake tongues.\"";
    next;
    menu
        "Sure, here you go!", L_Next9,
        "Maybe you will find someone else, I got stuff to do on my own!", L_Close;

L_Next9:
    mes "[Voltain]";
    if (countitem("SnakeTongue") < @SNAKETONGUE_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "SnakeTongue", @SNAKETONGUE_NEEDED;
    getexp @SNAKETONGUE_REWARD_XP, 0;
    set Zeny, Zeny + @SNAKETONGUE_REWARD_GOLD;
    set $@VOLTAIN_state, 9;
    mes "\"Excellent, now I can extract the venom to- uhm, nevermind. Thanks for your help.\"";
    goto L_Close;

L_state9:
    mes "[Voltain]";
    mes "\"I need to thicken a veno.. Oh, a potion actually. I want to try alizarin herbs for that, so can you bring me " + @HERBS_NEEDED + ", please?\"";
    next;
    menu
        "Here are the herbs.", L_Next10,
        "So you want to do a venom? I will not help you!", L_Close;

L_Next10:
    mes "[Voltain]";
    if (countitem("AlizarinHerb") < @HERBS_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "AlizarinHerb", @HERBS_NEEDED;
    getexp @HERBS_REWARD_XP, 0;
    set Zeny, Zeny + @HERBS_REWARD_GOLD;
    set $@VOLTAIN_state, 10;
    mes "\"Great! Now I can thicken the potion! I will try directly.\"";
    goto L_Close;

L_state10:
    mes "[Voltain]";
    mes "\"Oh I am hungry. Maybe I can eat some steaks. Could you bring me a steak,  please?\"";
    next;
    mes "\"Oh, I just wonder if I can inject some ven... Forget about that! Bring me " + @STEAK_NEEDED + " steaks!\"";
    next;
    menu
        "Here you go.", L_Next11,
        "Help yourself! In the Hurnscald Inn you can get some meals for sure!", L_Close;

L_Next11:
    mes "[Voltain]";
    if (countitem("Steak") < @STEAK_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "Steak", @STEAK_NEEDED;
    getexp @STEAK_REWARD_XP, 0;
    set Zeny, Zeny + @STEAK_REWARD_GOLD;
    set $@VOLTAIN_state, 11;
    mes "\"Thanks a lot. I will really enjoy my meal.\"";
    goto L_Close;

L_state11:
    mes "[Voltain]";
    mes "\"Could I have some arrows please? I have lost my hunting equipment when I was in the caves. Some dark creatures were chasing me!\"";
    next;
    mes "\"Acually I wonder if I can use these arrows for building a mouboo trap.... Oh wait! I need some " + @ARROW_NEEDED + " arrows for my self defence right? So do not talk about it!\"";
    menu
        "Here you go.", L_Next12,
        "Sorry I don't have arrows here!", L_Close;

L_Next12:
    mes "[Voltain]";
    if (countitem("Arrow") < @ARROW_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "Arrow", @ARROW_NEEDED;
    getexp @ARROW_REWARD_XP, 0;
    set Zeny, Zeny + @ARROW_REWARD_GOLD;
    set $@VOLTAIN_state, 12;
    mes "\"Thanks a lot. Now I feel more secure here in the outdoors.\"";
    goto L_Close;

L_state12:
    mes "[Voltain]";
    mes "\"I need to thicken a veno.. Oh, a potion actually. I want to try gamboge herbs for that, so can you bring me " + @HERBS_NEEDED + ", please?\"";
    next;
    menu
        "Here are the herbs.", L_Next13,
        "So you want to do a venom? I will not help you!", L_Close;

L_Next13:
    mes "[Voltain]";
    if (countitem("GambogeHerb") < @HERBS_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "GambogeHerb", @HERBS_NEEDED;
    getexp @HERBS_REWARD_XP, 0;
    set Zeny, Zeny + @HERBS_REWARD_GOLD;
    set $@VOLTAIN_state, 13;
    mes "\"Great! Now I can thicken the potion! I will try directly.\"";
    goto L_Close;

L_state13:
    mes "[Voltain]";
    mes "\"Doing so many ev- good things makes me hungry. I feel in the mood for a Chocolate Cake. Can you bring me " + @CHOCOLATECAKE_NEEDED + ",  please? \"";
    next;
    menu
        "Here it is.", L_Next14,
        "I don't feel in the mood to bring you a cake.", L_Close;

L_Next14:
    mes "[Voltain]";
    if (countitem("ChocolateCake") < @CHOCOLATECAKE_NEEDED)
        goto L_NOT_ENOUGH;
    delitem "ChocolateCake", @CHOCOLATECAKE_NEEDED;
    getexp @CHOCOLATECAKE_REWARD_XP, 0;
    set Zeny, Zeny + @CHOCOLATECAKE_REWARD_GOLD;
    set $@VOLTAIN_state, 0;
    mes "\"I love chocolate cakes. I wonder, if I can use my ven- \"";
    emotion EMOTE_EVIL, strcharinfo(0);
    goto L_Close;

L_NOHELP:
    mes "\"If you don't want to help me, then away with you. Bothering me won't help me get my work done.\"";
    mes "Voltain then mumbles something under his breath that you cannot quite make out";
    mes "\"... These damn kids. \"";
    goto L_Close;

L_Close:
    set @BOTTLE_NEEDED,  0;
    set @BOTTLE_REWARD_XP,  0;
    set @BOTTLE_REWARD_GOLD,  0;
    set @BLACK_SC_ST_NEEDED,  0;
    set @BLACK_SC_ST_REWARD_XP,  0;
    set @BLACK_SC_ST_REWARD_GOLD,  0;
    set @BUGLEG_NEEDED,  0;
    set @BUGLEG_REWARD_XP,  0;
    set @BUGLEG_REWARD_GOLD,  0;
    set @HERBS_NEEDED,  0;
    set @HERBS_REWARD_XP,  0;
    set @HERBS_REWARD_GOLD,  0;
    set @RAWLOG_NEEDED,  0;
    set @RAWLOG_REWARD_XP,  0;
    set @RAWLOG_REWARD_GOLD,  0;
    set @REDAPPLE_NEEDED,  0;
    set @REDAPPLE_REWARD_XP,  0;
    set @REDAPPLE_REWARD_GOLD,  0;
    set @STEAK_NEEDED,  0;
    set @STEAK_REWARD_XP,  0;
    set @STEAK_REWARD_GOLD,  0;
    set @ARROW_NEEDED,  0;
    set @ARROW_REWARD_XP,  0;
    set @ARROW_REWARD_GOLD,  0;
    set @SNAKETONGUE_NEEDED,  0;
    set @SNAKETONGUE_REWARD_XP,  0;
    set @SNAKETONGUE_REWARD_GOLD,  0;
    set @CHOCOLATECAKE_NEEDED,  0;
    set @CHOCOLATECAKE_REWARD_XP,  0;
    set @CHOCOLATECAKE_REWARD_GOLD,  0;
    close;

L_NOT_ENOUGH:
    mes "\"Can't you count!? I need more. \"";
    goto L_Close;
}