summaryrefslogtreecommitdiff
path: root/npc/re/quests/skills/swordman_skills.txt
blob: 295291a16548ca8cea635bd2b9af24a009bc1c95 (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
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
//===== rAthena Script =======================================
//= Swordsman Skills Quests
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
//= 1.8
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
//= Quests for skills: Fatal Blow, Mobile HP Recovery,
//  Auto-Berserk
//===== Additional Comments: =================================
//= 1.6 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.7 Updated to latest available official file. [Masao]
//= 1.8 Fixed JobLevel requirements. [Euphy]
//============================================================

izlude_in,175,130,2	script	Knight De Thomas	98,4,4,{
	if ((BaseClass == Job_Swordman) && (sm_movingrecovery_x < 1)) {
		mes "[De Thomas]";
		mes "Oh, no! You must have been hurt! Are you ok?";
		mes "You must have fought hard to get such serious injuries..";
		mes "Being a swordsman must come with a lot of responsibility and sacrifice.";
		next;
		mes "[De Thomas]";
		if (Sex == 0) {
			mes "For these swordsmen and knights, there is a wonderful skill.";
		}
		else {
			mes "For these swordswomen and knights, there is a wonderful skill young lady.";
		}
		mes "I present to you - HP Recovery While Moving!";
		mes "Body moving is a splendid skill";
		mes "that allows you to regain strength(HP)";
		mes "while you are moving!";
		next;
		mes "[De Thomas]";
		mes "It is currently under development";
		mes "so it may not recover that much,";
		mes "but it will help a little.";
		mes "What do you think? Would you like to learn this skill?";
		next;
		switch (select("What a nice skill! I want to learn it!:No, thank you.")) {
		case 1:
			mes "[De Thomas]";
			mes "Very well. I will tell you what you need to learn this skill.";
			mes "First, your job level must be higher than ^00880035^000000.";
			mes "You will also need ^008800200 empty bottles^000000.";
			mes "Why? Because it is proof that you fought fiercely to have used that many potions.";
			next;
			mes "[De Thomas]";
			mes "Also, the armor you used in battle.";
			mes "This is also proof of an experienced fighter.";
			mes "For the armor... your armor is perfect!";
			mes "Bring your armor!";
			mes "Last but not least... bring me one ^008800Moth Wing^000000.";
			next;
			menu "Eh? You need that, too?",-;
			mes "[De Thomas]";
			mes "Not really.. I don't really NEED it.";
			mes "It's just that my niece has gotten a bug hunting as a holiday task during the summer vacation.";
			mes "Of course! It would be much easier for me to get it myself.";
			mes "but I must work here all the time so I don't exactly have the time to go out and get it.";
			next;
			mes "[De Thomas]";
			mes "Don't you think it is pitiful that I have to stay in once place everyday, not being able to go outside?";
			mes "Please, find me one...*sniffsniff*";
			mes "If you don't...";
			set sm_movingrecovery_x,1;
			mes "You won't get anything! Muahahaha.";
			close;
		case 2:
			mes "[De Thomas]";
			mes "...";
			close;
		}
	}
	else if ((BaseClass == Job_Swordman) && (sm_movingrecovery_x > 1)) {
		mes "[De Thomas]";
		mes "Oh, it's you?";
		mes "Long time no see!";
		mes "You seem healthier than before.";
		mes "Hahahaha!";
		mes "Take care! See you again!";
		close;
	}
	else if ((BaseClass == Job_Swordman) && (sm_movingrecovery_x == 1)) {
		mes "[De Thomas]";
		mes "Welcome back...";
		mes "are you ready to learn Body Movin'?";
		next;
		switch (select("Yes.:No, I'm not ready yet.")) {
		case 1:
			if ((JobLevel > 34 || (BaseJob == Job_Knight || BaseJob == Job_Crusader)) && (countitem(713) > 199) && (countitem(1058) > 0)) {
				mes "[De Thomas]";
				mes "Let's see.....";
				next;
				mes "[De Thomas]";
				mes "Ok! I shall now teach you...";
				mes "...The Body Movin' skill!";
				next;
				delitem 713,200; //Empty_Bottle
				delitem 1058,1; //Wing_Of_Moth
				skill "SM_MOVINGRECOVERY",1,0;
				set sm_movingrecovery_x,2;
				mes "[De Thomas]";
				mes "There you go!";
				mes "Try it yourself.";
				mes "But don't overdo it.";
				next;
				mes "[De Thomas]";
				mes "Oh yeah, I won't be needing your";
				mes "armor so you can keep it.";
				mes "Good luck now!";
				close;
			}
			else if (JobLevel < 35 && (BaseJob != Job_Knight && BaseJob != Job_Crusader)) {
				mes "[De Thomas]";
				mes "Wait a second, your Job level isn't above ^00880035^000000!";
				mes "Come back when it is.";
				close;
			}
			else if ((countitem(713) < 200) || (countitem(1058) < 1)) {
				mes "[De Thomas]";
				mes "You do not have all the items I asked for.";
				next;
				mes "[De Thomas]";
				mes "Remember I need, ^008800200 empty bottles^000000, your armor, and a ^008800Moth Wing^000000. Come back when you have it all.";
				close;
			}
			mes "[De Thomas]";
			mes "You do not have all the items I asked for.";
			next;
			mes "[De Thomas]";
			mes "Remember I need, ^008800200 empty bottles^000000, your armor, and a ^008800Moth Wing^000000. Come back when you have it all.";
			close;
		case 2:
			mes "[De Thomas]";
			mes "Is that so?";
			mes "Then come when you are prepared.";
			close;
		}
	}
	mes "[De Thomas]";
	mes "My name is De Thomas Carlos.";
	mes "Knight of Prontera's 3rd Calvary.";
	mes "I have a certain duty these days.";
	mes "Ehem! Need I say more.";
	close;
}

prt_in,75,88,5	script	Leon Von Frich	85,3,3,{

	if ((BaseClass == Job_Swordman) && (JobLevel >= 25 || (BaseJob == Job_Knight || BaseJob == Job_Crusader))) {
		if (getskilllv("SM_FATALBLOW") == 1) {
			mes "[Leon]";
			mes "Eh?";
			mes "I was wondering who that was!";
			mes "Why it's you from before!";
			mes "Nice to see you again! How are you?";
			mes "Be careful! Hahaha!";
			close;
		}
		else if ((countitem(1752) > 9) && (countitem(1751) > 9) && (countitem(532) > 0) && (countitem(962) > 29) && (countitem(526) > 4)) {
			mes "[Leon]";
			mes "Ooh! You are more than ready";
			mes "to learn Fatal Blow!";
			mes "So how about it? Would you like to learn?";
			next;
			switch (select("Yes!:No, I don't want to.:But, what is Fatal Blow?")) {
			case 1:
				mes "[Leon]";
				mes "OK, lets begin!";
				next;
				delitem 1752,10; //Fire_Arrow
				delitem 1751,10; //Silver_Arrow
				delitem 532,1; //Banana_Juice
				delitem 962,30; //Tentacle
				delitem 526,5; //Royal_Jelly
				skill "SM_FATALBLOW",1,0;
				mes "[Leon]";
				mes "Success!";
				mes "Go use your new skill to its full potential.";
				mes "Hahahahahahahaha!";
				close;
			case 2:
				mes "[Leon]";
				mes "I don't like you!!!";
				close;
			case 3:
				mes "[Leon]";
				mes "I developed this skill recently.";
				mes "When you use bash, depending ";
				mes "on your level, you can stun ";
				mes "your opponent. .";
				mes "You have learned bash, haven't you?";
				next;
				mes "[Leon]";
				mes "What do you think. Stun is";
				mes "a very useful technique. Don't you find this skill attractive?";
				mes "When you think you do, just come right back to me!";
				close;
			}
		}
		mes "[Leon]";
		mes "Ooh! A young and strong swordsman!";
		next;
		mes "[Leon]";
		mes "Wow, seeing your arm, you must enjoy using bash?";
		next;
		menu "Eh, I.. just...",-;
		mes "[Leon]";
		if (Sex == 0) {
			mes "No need to be surprised.";
			mes "If you use a sword, of course you ought to have a good arm!";
		}
		else {
			mes "Nothing to be embarrassed about.";
			mes "Even if you are a female you need a strong arm to use a sword!";
		}
		mes "In times of only useless and lazy youngsters,";
		mes "I'm glad I met someone strong like you.";
		next;
		mes "[Leon]";
		mes "Yes, I would like to give a present to an awesome swordsman like you.";
		next;
		switch (select("What present?:It's ok.")) {
		case 1:
			mes "[Leon]";
			mes "Haha nothing special, but a skill to attack the vital point!";
			next;
		case 2:
			mes "[Leon]";
			mes "...Haha nothing special, just a skill that aims at the vital spot!";
			next;
		}
		mes "[Leon]";
		mes "It's a skill I developed recently.";
		mes "When you use bash, depending on";
		mes "your level, your opponent can";
		mes "become stunned.";
		mes "You have learned bash, haven't you?";
		next;
		mes "[Leon]";
		mes "When I was a swordsman like you,";
		mes "I used to enjoy using Bash. Every time, I thought";
		mes "- maybe the attack would be more powerful";
		mes "if I use stun at the same time.";
		next;
		mes "[Leon]";
		mes "I drew back from the battlefield to do research";
		mes "and finally, I developed this wonderful new skill!";
		mes "Would you like to learn this skill?";
		next;
		switch (select("Yes.:No.:Do you have any advice on how to eat sushi?")) {
		case 1:
			mes "[Leon]";
			mes "Ok. I'll tell you the requirements.";
			mes "First you need to have level 5 Bash.";
			mes "You will also need to prepare 10 Fire Arrows, 10 Silver Arrows, 1 bottle of Banana Juice, 30 Tentacles, and 5 bottles of Royal Jelly.";
			mes "They are.. somewhat like ingredients.";
			next;
			mes "[Leon]";
			mes "come to me again once you have all the materials.";
			mes "We shall talk then.";
			close;
		case 2:
			mes "[Leon]";
			mes "Hahahahahahahahahaha!";
			mes "... ";
			mes " ... ";
			mes " ...";
			mes "I'm at a loss of words!?";
			close;
		case 3:
			mes "[Sushi King Leon]";
			mes "The best way to eat sushi is";
			mes "with your hands.";
			mes "That is the basic.";
			mes "And dip the fish, not the rice,";
			mes "in the soy sauce.";
			next;
			mes "[Sushi King Leon]";
			mes "That way you get a richer flavor.";
			mes "Also, always eat the kind that is in season.";
			mes "Eating in the order of white fish then";
			mes "blue fish will make it taste better!";
			mes "Mmm! I like sushi~~!";
			close;
		}
	}
	mes "[Leon]";
	mes "Oh, no! I have nothing to offer you!";
	mes "I can't say nice and fun things to anyone";
	mes "other than swordsmen!";
	mes "See you in a better world!";
	close;

OnTouch:
	mes "[Leon]";
	mes "Hahahahahahaha!";
	mes "Hahahahahahaha!";
	close;
}

prt_in,94,57,3	script	Juan	85,4,4,{
	if (BaseClass == Job_Swordman) {
		if (getskilllv("SM_AUTOBERSERK") == 1) {
			mes "[Juan]";
			mes "Mmm? Long time no see!";
			mes "How are you?";
			mes "You got stronger than before.";
			mes "Many expect great things from you.";
			mes "You can do it.";
			close;
		}
		else if (JobLevel < 10 && (BaseJob != Job_Knight && BaseJob != Job_Crusader)) {
			mes "[?]";
			mes "What are you?";
			mes "Eh, still a beginner.";
			mes "I'm busy, so go train a little more";
			mes "before coming back.";
			close;
		}
		else if (JobLevel < 30 && (BaseJob != Job_Knight && BaseJob != Job_Crusader)) {
			mes "[Juan]";
			mes "Oh, nice to meet you.";
			mes "You can be on your way. (smiley~)";
			close;
		}
		else if ((countitem(924) > 34) && (countitem(958) > 9) && (countitem(957) > 9) && (countitem(518) > 9)) {
			mes "[Juan]";
			mes "Ooh. Young swordsman!";
			mes "You are ready to learn the";
			mes "newest skill, Auto Berserk?!";
			next;
			switch (select("Hoho, I would like to learn it now.:What is that?")) {
			case 1:
				mes "[Juan]";
				mes "Ok. Then...";
				next;
				delitem 924,35; //Powder_Of_Butterfly
				delitem 958,10; //Horrendous_Mouth
				delitem 957,10; //Decayed_Nail
				delitem 518,10; //Honey
				skill "SM_AUTOBERSERK",1,0;
				mes "[Juan]";
				mes "You have just become a swordsman";
				mes "that can use Auto Berserk.";
				mes "You can go about ";
				mes "and achieve great things!";
				next;
				mes "[Juan]";
				mes "Good luck!";
				next;
				mes "[Juan]";
				mes "....................................oh yeah.";
				mes "I forgot to say something.";
				mes "There are some things you must keep in mind.";
				next;
				mes "[Juan]";
				mes "Once you regain health,";
				mes "this skill will subside.";
				mes "Also, there isn't really a time limit";
				mes "but it can still disappear when";
				mes "it is attacked with a skill that can";
				mes "nullify provoke.";
				next;
				mes "[Juan]";
				mes "If you don't remember these characteristics,";
				mes "you may run into some problems on the battlefield";
				mes "when the skill disappears all of a sudden.";
				next;
				mes "[Juan]";
				mes "Then... bye for real~";
				close;
			case 2:
				mes "[Juan]";
				mes "Auto Berserk?";
				mes "It's a skill crucial on the battlefield.";
				mes "When your health is in red,";
				mes "your hidden potential provokes yourself";
				mes "to help you in battle.";
				next;
				mes "[Juan]";
				mes "It is perfect for those that";
				mes "fight on the battlefield like fire!";
				mes "With your ability, you can learn";
				mes "this skill right now.";
				mes "Then, I shall tell you the necessary materials.";
				next;
				mes "[Juan]";
				mes "You need 35 Powder of Butterfly.";
				mes "The energy from the magnificent";
				mes "wings of a butterfly will";
				mes "help you gather your strength!";
				mes "And 10 Horrendous Mouth.";
				mes "10 Decayed Nail.";
				mes "and last but not least...";
				mes "10 Honey!";
				next;
				mes "[Juan]";
				mes "Did you get all that down?";
				mes "As always, please come back";
				mes "when you are ready.";
				mes "I look forward to seeing you again.";
				close;
			}
		}
		mes "[Juan]";
		mes "Oh no, you have more injuries";
		mes "since the last time I saw you.";
		mes "You went into battle like this?";
		mes "Seems like you are straining yourself.";
		next;
		mes "[Juan]";
		mes "Even though you may have a lot of strength";
		mes "you can't do much when you reach your limits so";
		mes "don't overestimate your powers.";
		mes "Of course you could always use the";
		mes "skill we developed to overcome these limits.";
		next;
		switch (select("Eh! What are you talking about?:Haha, there can't be such a thing.:Keuuuuuuuh!")) {
		case 1:
			mes "[Juan]";
			mes "The skill is called Berserk.";
			mes "It is deemed the flower of a battlefield.";
			mes "When your health is red,";
			mes "your hidden potential is provokes yourself";
			mes "to help you in battle.";
			next;
			mes "[Juan]";
			mes "It is perfect for those that";
			mes "fight on the battlefield like fire!";
			mes "With your ability, you can learn";
			mes "this skill right now.";
			mes "Then, I shall tell you the necessary materials.";
			next;
			mes "[Juan]";
			mes "You need 35 Powder of Butterfly.";
			mes "The energy from the magnificent";
			mes "wings of a butterfly will";
			mes "help you gather your strength!";
			mes "And 10 Horrendous Mouth.";
			mes "10 Decayed Nail.";
			mes "and last but not least...";
			mes "10 Honeys!";
			next;
			mes "[Juan]";
			mes "Did you get all that down?";
			mes "As always, please come back";
			mes "when you are ready.";
			mes "I look forward to seeing you again.";
			close;
		case 2:
			mes "[Juan]";
			mes "Bleh, were you fooled all your life.";
			mes "I don't know. Don't talk to me.";
			close;
		case 3:
			mes "[Juan]";
			mes "Keuuuuuuuuuuuuuh!";
			mes "Ooowwwwwuuuuuuuuuuuuuhhh!";
			mes "Keuaaaaaaaaaaah!";
			close;
		}
	}
	mes "[Juan]";
	mes "Are you enjoying your trip?";
	mes "I hope you have nice days ahead of you.";
	mes "Ah, I am just a kind knight Juan.";
	mes "Don't worry about me too much. Hahaha...";
	close;
}

//============================================================ 
// Old changelog
//============================================================ 
//= Fully working
//= 1.0a Now using functions found in "Global_Functions.txt"
//= for class checks.
//= 1.1 Added missing delitem [Lupus]
//= 1.2 Added Baby Class Support [Lupus]
//= 1.3 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
//= 1.4 Updated the NPC to allow subclasses of swordsman to learn the skills, [MasterOfMuppets]
//=	1.5 Fixed exploits [Lupus]
//= 1.5a Fixed some typos [IVBela]
//============================================================