summaryrefslogtreecommitdiff
path: root/npc/re/quests/magic_books.txt
blob: 9f9ccec1fd86d7c28af4f9a35e95fae277592536 (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
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
//===== Hercules Script ======================================
//= Magic Book Seller
//===== By: ================================================== 
//= Masao
//= Credits to Muad_Dib for the translation.
//===== Current Version: ===================================== 
//= 1.1
//===== Compatible With: ===================================== 
//= Hercules
//===== Description: ========================================= 
//= An NPC which sells you different kinds of Magic Books.
//===== Additional Comments: ================================= 
//= 1.0 First Version. [Masao]
//= 1.1 Optimized, 60% size reduction. [Euphy]
//============================================================ 

geffen_in,176,105,4	script	Magic Book Master Velof	64,{

	if (checkweight(1201,1) == 0) {
		mes "You're carrying too many items. Please make some room in your bag first.";
		close;
	}
	if ((MaxWeight - Weight) < 1000) {
		mes "You're overweight with items. Please lose some item weight first.";
		close;
	}
	if ((Upper == 2) && (Class != Job_Baby_Warlock)) {
		mes "[Magic Book Master Velof]";
		mes "What are you, a baby?";
		mes "I'm not here to babysit. Get lost!";
		close;
	}
	if ((Class != Job_Warlock) && (Class != Job_Warlock_T) && (Class != Job_Baby_Warlock)) {
		mes "[Magic Book Master Velof]";
		mes "Ha ha, are you also seeking new knowledge?";
		next;
		mes "[Magic Book Master Velof]";
		mes "I'm sorry, but my knowledge doesn't concern you.";
		close;
	}
	if (getskilllv(2230) < 1) {
		mes "[Magic Book Master Velof]";
		mes "Well you've met all the qualifications except one: you need the Release spell.";
		next;
		mes "[Magic Book Master Velof]";
		mes "Learn the spell first. I've got so many things to tell you.";
		close;
	}
	if ((getskilllv(2230) > 0) && (Class == Job_Warlock) || (Class == Job_Warlock_T) || (Class == Job_Baby_Warlock)) {
		mes "[Magic Book Master Velof]";
		mes "Welcome, my friend.";
		mes "Congratulations on entering a brand new world of magic.";
		next;
		mes "[Magic Book Master Velof]";
		mes "We magic practitioners are always thirsty for new knowledge and power.";
		next;
		mes "[Magic Book Master Velof]";
		mes "We endure great hardship and pain to achieve what we want. When we finally do, the sense of accomplishment defies description. That's why both you and I have chosen the way of magic.";
		next;
		mes "[Magic Book Master Velof]";
		mes "By the way, what brings you to me today?";
		next;
		switch (select("Nothing.:Do you know the Reading Spell Book?:What's the Freezing Spell?:Can I have a Magic Book?:Can I use the Reading Spell Book without the Freezing Spell?:About the Ultimate Magic Book")) {
		case 1:
			mes "[Magic Book Master Velof]";
			mes "Hah! You're silly.";
			close;
		case 2:
			mes "[Magic Book Master Velof]";
			mes "Reading Spell Book literally means 'read a spell book.' Do you know how to use Magic Books?";
			next;
			switch (select("Yes, I do.:No, I don't.")) {
			case 1:
				mes "[Magic Book Master Velof]";
				mes "Well then, you don't need an additional lecture.";
				close;
			case 2:
				mes "[Magic Book Master Velof]";
				mes "Magic Books are an advanced type of magic scroll. While spells on scrolls disappear after one use, the ones in Magic Books can be cast multiple times.";
				next;
				mes "[Magic Book Master Velof]";
				mes "Let's compare a spell on a scroll to a wire. When the wire is used to open a door or do something else, it's bent and crushed, losing its original shape. A spell from a Magic Book is more like a shape memory alloy.";
				next;
				mes "[Magic Book Master Velof]";
				mes "Huh, don't you now what shape memory alloy is? Eh, just remember this: a wire made from shape memory alloy restores its shape over time.";
				next;
				mes "[Magic Book Master Velof]";
				mes "Like the alloy, a spell on a Magic Book remains after a use, although reusing the spell has a downtime for its restoration.";
				next;
				mes "[Magic Book Master Velof]";
				mes "...Oh, I didn't mean to talk for too long. Anyways, you can use Magic Books to cast spells that you've learned. Its concept is different from normal spells.";
				next;
				select("What's the difference?");
				mes "[Magic Book Master Velof]";
				mes "Why do you have to write your existing spells in Magic Books, you asked?";
				next;
				mes "[Magic Book Master Velof]";
				mes "That's a good question. It's related to Magic Binding.";
				next;
				mes "[Magic Book Master Velof]";
				mes "You already learned Release, which allows you to hold the energy of the four different elements before the actual casting. Magic Binding is similar to Release.";
				next;
				mes "[Magic Book Master Velof]";
				mes "Since you've learned Release, you're capable of using Magic Binding as well. Well, let's talk about that later.";
				next;
				mes "[Magic Book Master Velof]";
				mes "You know how to hold an existing spell, and then cast it at a desired timing via Release.";
				next;
				mes "[Magic Book Master Velof]";
				mes "Carrying the globes of the four elements is also related to Magic Binding.";
				next;
				mes "[Magic Book Master Velof]";
				mes "As you know, the four elements are Fire, Water, Wind, and Earth. Being able to employ them freely is the essential principle of magic.";
				next;
				mes "[Magic Book Master Velof]";
				mes "We Humans use torches to keep fire, fans to blow wind, and bowls to hold water. We also use clay to make earthenware.";
				next;
				mes "[Magic Book Master Velof]";
				mes "Those activities may differ from magic, but both are the same in the sense of employing the four elements.";
				next;
				mes "[Magic Book Master Velof]";
				mes "When you use complex magic spells to summon a storm, drop lightning, or burn an area, that consumes a lot of your energy, both physically and mentally.";
				next;
				mes "[Magic Book Master Velof]";
				mes "When you fail to bind such powerful magic spells or fail to control them,";
				next;
				mes "[Magic Book Master Velof]";
				mes "you can receive irreparable damage to your mind and body.";
				next;
				mes "[Magic Book Master Velof]";
				mes "That's why we use Magic Books to reduce that burden. It helps summon pre-cast spells while you're focusing on binding their magic power.";
				next;
				mes "[Magic Book Master Velof]";
				mes "There's one downside though: Magic Books cannot be used for spells that you haven't learned.";
				next;
				mes "[Magic Book Master Velof]";
				mes "As I said earlier, spells in Magic Books tend to go back to what they are.";
				next;
				mes "[Magic Book Master Velof]";
				mes "That said, as a Circler, you cannot change or create spells in Magic Books.";
				next;
				mes "[Magic Book Master Velof]";
				mes "Even if you create one, its power will be beyond your capacity.";
				next;
				mes "[Magic Book Master Velof]";
				mes "In order to use the Reading Spell Book, you must learn the Freezing Spell to bind magic.";
				close;
			}
		case 3:
			mes "[Magic Book Master Velof]";
			mes "The Freezing Spell is used for Magic Binding. It helps you to insert a magic spell to a circle.";
			next;
			mes "[Magic Book Master Velof]";
			mes "Circles of magic work organically with each other. When you use the Freezing Spell to bind a spell, the spell won't activate until you cast the release spell.";
			next;
			mes "[Magic Book Master Velof]";
			mes "Of course, binding a spell continuously consumes your mana, but it consumes less mana than conventional magic spells.";
			next;
			mes "[Magic Book Master Velof]";
			mes "Magic Binding becomes more difficult when you use more powerful magic spells.";
			next;
			mes "[Magic Book Master Velof]";
			mes "For weak spells, you can bind two to three of them with your circle. For more powerful spells, maybe one or two is possible.";
			next;
			mes "[Magic Book Master Velof]";
			mes "That all depends on your ability to control your spells. You'll have to try and experience Magic Binding after you first learn it to really understand.";
			close;
		case 4:
			mes "[Magic Book Master Velof]";
			mes "I'm sorry, but I only have Magic Books for beginners, but they're obviously not suitable for you. Do you still want one?";
			next;
			switch (select("Sure thing.:Where can I find advanced books?")) {
			case 1:
				mes "[Magic Book Master Velof]";
				mes "Please go talk to [Lea] in the Archive. Tell her that you need one of the Magic Books that I've stored in there.";
				next;
				mes "[Magic Book Master Velof]";
				mes "For your information, she won't give it to you without anything in return. Expect her to ask you for something!";
				if (wm_book < 1) set wm_book, 1;
				close;
			case 2:
				mes "[Magic Book Master Velof]";
				mes "I'm sorry, but our management has recently decided to limit the availability of Magic Books for Multi Circlers. It's because their numbers are increasing more quickly than we expected.";
				next;
				mes "[Magic Book Master Velof]";
				mes "You could find one if you try hard, but I don't have any with me.";
				next;
				mes "[Magic Book Master Velof]";
				mes "If our management releases the restriction, you'll be the first one to know. Don't worry.";
				close;
			}
		case 5:
			mes "[Magic Book Master Velof]";
			mes "Nothing will happen when you try to bind magic without using Magic Binding because you have nothing to hold magic.";
			next;
			mes "[Magic Book Master Velof]";
			mes "It's like water that needs a bowl to stay in place.";
			next;
			mes "[Magic Book Master Velof]";
			mes "The problem is when you try to forcefully cast a spell that you haven't learned. It'll definately backfire on you.";
			next;
			mes "[Magic Book Master Velof]";
			mes "Of course, the damage won't be severe: you'll fall asleep or be thrown into confusion. This is all because there's a conflict between your Magic Book and the force of Magic Binding when you're trying to summon and hold a unlearned spell.";
			next;
			mes "[Magic Book Master Velof]";
			mes "Don't try it out just to see what happens for yourself! Falling asleep while casting a spell? There's nothing more humiliating than that to magic practitioners like us.";
			close;
		case 6:
			if ((BaseLevel > 139) && (getskilllv(2217) > 0) || (getskilllv(2213) > 0)) {
				if(mac_book < 1){
					mes "[Magic Book Master Velof]";
					mes "I'm sorry, but could you ask someone else? I'm kind of busy right now.";
					close;
				}
				if (mac_book == 1) {
					mes "[Magic Book Master Velof]";
					mes "Huh, are you looking for the Ultimate Magic Book? Who sent you?";
					next;
					select("Ms. Lea.");
					mes "[Magic Book Master Velof]";
					mes "I'm sorry, but there's not much information left about the Ultimate Magic Book.";
					next;
					mes "[Magic Book Master Velof]";
					mes "A few scholars in the Midgard Continent once tried to collect ancient Magic Books and reproduce that book, but...";
					next;
					select("But what?");
					mes "[Magic Book Master Velof]";
					mes "Oh yes, perhaps he might know something.";
					next;
					select("Yes, I knew this was coming!");
					mes "[Magic Book Master Velof]";
					mes "My brother is just like you. He's very interested in recreating the Ultimate Magic Book.";
					next;
					mes "[Magic Book Master Velof]";
					mes "His name is Galfos.";
					mes "He's been taking a great interest in the ancient Magic Books.";
					next;
					mes "[Magic Book Master Velof]";
					mes "I didn't support him or give him any advice for his research since I thought he'd give on it pretty quickly, but...";
					next;
					mes "[Magic Book Master Velof]";
					mes "If he's discovered anything useful, maybe it can helpful to you.";
					next;
					select("Where's Galfos now?");
					mes "[Magic Book Master Velof]";
					mes "I've heard that he's near the Expedition Camp beyond the Dimensional Rift to seek information about the ancient Magic Books.";
					next;
					mes "[Magic Book Master Velof]";
					mes "If you want to see him, you should prepare for a long journey.";
					set mac_book,2;
					close;
				}
				if (mac_book > 1) {
					mes "[Magic Book Master Velof]";
					mes "Galfos is near the Expedition Camp beyond the Dimensional Rift.";
					next;
					mes "[Magic Book Master Velof]";
					mes "If you want to see him, you should prepare for a long journey.";
					close;
				}
			}
			mes "[Magic Book Master Velof]";
			mes "Ha ha, I'm sorry, but you should focus on strengthening your body rather than creating Magic Books.";
			close;
		}
	}
	mes "[Magic Book Master Velof]";
	mes "Ha ha, are you also seeking new knowledge?";
	next;
	mes "[Magic Book Master Velof]";
	mes "I'm sorry, but my knowledge doesn't concern you.";
	close;
}

geffen_in,175,112,4	script	Lea	123,{

	if (checkweight(1201,1) == 0) {
		mes "You're carrying too many items. Please make some room in your bag first.";
		close;
	}
	if ((MaxWeight - Weight) < 1000) {
		mes "You're overweight with items. Please lose some item weight first.";
		close;
	}
	if ((wm_book > 0) && (Class == Job_Warlock) || (Class == Job_Warlock_T) || (Class == Job_Baby_Warlock)) {
		mes "[Lea]";
		mes "You can only read books here. If you'd like to borrow any books, please receive an approval from 1 manager and 1 High Mage.";
		next;
		mes "[Lea]";
		mes "How may I help you?";
		next;
		select("Master Velof asked me to bring his Magic Book.");
		mes "[Lea]";
		mes "Are you borrowing a book?";
		next;
		switch (select("Let me think.:I want the Beginner's Magic Books.:I want the Intermediate Magic Books.:I want the Superior Magic Books.:I want the Ultimate Magic Book.")) {
		case 1:
			mes "[Lea]";
			mes "No problem.";
			close;
		case 2:
			mes "[Lea]";
			mes "We're in trouble because so many people want to borrow our Magic Books.";
			next;
			mes "[Lea]";
			mes "Unfortunately, many of our lent books aren't returned on time. That's why we've decided to charge a security deposit.";
			next;
			select("A security deposit?");
			mes "[Lea]";
			mes "Yes. You may pay a minimum of 10,000 Rune-Midgarts zeny. Alternatively, you can bring 2 Old Magic Books or 50 Old Pages. Once you pay the deposit, I'll let you borrow some Magic Books.";
			next;
			set .@Payment, select("Where can I find Old Magic Books and Old Pages?:I'll pay with zeny.:I'll pay with Old Magic Books.:I'll pay with Old Pages.")-1;
			mes "[Lea]";
			if (!.@Payment) {
				mes "I heard that you can find them from Ride Words, Death Words, Bathorys, and other monsters. I ask that you please don't strain yourself to find those items.";
				next;
				mes "[Lea]";
				mes "Your life is more important than anything else, you know?";
				close;
			}
			if ((.@Payment == 1 && Zeny > 10000) || (.@Payment == 2 && countitem(1006) > 1) || (.@Payment == 3 && countitem(1097) > 49)) {
				mes "What kind of Magic Book do you want?";
				next;
				set .@i, select("Let me think.:Magic Book (Fire Bolt):Magic Book (Cold Bolt):Magic Book (Lightning Bolt)")-1;
				mes "[Lea]";
				if (!.@i) {
					mes "No problem.";
					close;
				}
				if (countitem(6188+.@i)) {
					mes "You already have that Magic Book. You can't borrow a new book until you return the current one.";
					next;
					mes "[Lea]";
					mes "Don't you know how many others would want the book you already have? It's a bit selfish to want more than one, you know.";
					close;
				}
				if ((.@Payment == 1 && Zeny > 10000) || (.@Payment == 2 && countitem(1006) > 1) || (.@Payment == 3 && countitem(1097) > 49)) {
					mes "The book's return date is written on the lending card on the back cover of the book.";
					next;
					mes "[Lea]";
					mes "Please try not to lose or damage the book to avoid paying any extra charges.";
					if (.@Payment == 1) set Zeny, Zeny - 10000;
					else if (.@Payment == 2) delitem 1006,2; //Old_Magic_Book
					else delitem 1097,50; //Worn_Out_Page
					getitem 6188+.@i,1; //Magic_Book_FB, Magic_Book_CB, Magic_Book_LB
					close;
				}
			}
			mes "I'm sorry, but you don't have enough funds.";
			close;
		case 3:
			mes "[Lea]";
			mes "Ah, so you want the Intermediate Magic Books. Please pay 50,000 Rune-Midgartian zeny, or you can bring me 2 Old Blue Boxes or 9 Eluniums to borrow the Intermediate Magic Books.";
			next;
			set .@Payment, select("Where can I find Old Blue Boxes and Eluniums?:I'll pay 50,000 zeny.:I'll pay with Old Blue Boxes.:I'll pay with Eluniums.")-1;
			mes "[Lea]";
			if (!.@Payment) {
				mes "Old Blue Boxes are quite rare to find, but they can be obtained from monsters everywhere in the world, including Myst Cases, Megalogons, Mimics, Nightmares, Krabens, Requiems, Nine Tails, Noxiouses, and Byorgues.";
				mes "If you have sufficient funds, you may buy the boxes from street vendors.";
				next;
				mes "[Lea]";
				mes "Eluniums can be obtained from Hyeguns, Zombie Prisoners, Teddy Bears, Obsedians, and Loli Ruris. Or you can refine Rough Eluniums to Eluniums at the Forge in town, and that may be easier.";
				close;
			}
			if ((.@Payment == 1 && Zeny > 50000) || (.@Payment == 2 && countitem(603) > 1) || (.@Payment == 3 && countitem(985) > 8)) {
				mes "What kind of Magic Book do you want?";
				next;
				set .@i, select("Let me think.:Magic Book (Storm Gust):Magic Book (Lord of Vermillion):Magic Book (Meteor Storm):Magic Book (Thunderstorm):Magic Book (Jupitel Thunder):Magic Book (Water Ball):Magic Book (Heaven's Drive):Magic Book (Earth Spike)")-1;
				setarray .@Books[0],6192,6193,6194,6197,6198,6199,6200,6201;
				mes "[Lea]";
				if (!.@i) {
					mes "No problem.";
					close;
				}
				if (countitem(.@Books[.@i-1])) {
					mes "You already have that Magic Book. You can't borrow a new book until you return the current one.";
					next;
					mes "[Lea]";
					mes "Don't you know how many others would want the book you already have? It's a bit selfish to want more than one, you know.";
					close;
				}
				if ((.@Payment == 1 && Zeny > 50000) || (.@Payment == 2 && countitem(603) > 1) || (.@Payment == 3 && countitem(985) > 8)) {
					mes "Thank you for your deposit. The book's return date is written on the lending card on the back cover of the book. Please try not to lose or damage the book and avoid paying compensation.";
					next;
					mes "[Lea]";
					mes "The Intermediate and Superior Magic Books must be returned upon borrowing the Ultimate Magic Book. Remember that you're just borrowing them, so make sure you take good care of those books.";
					if (.@Payment == 1) set Zeny, Zeny - 50000;
					else if (.@Payment == 2) delitem 603,2; //Old_Blue_Box
					else delitem 985,9; //Elunium
					getitem .@Books[.@i-1],1; //Magic_Book_SG, Magic_Book_LOV, Magic_Book_MS, Magic_Book_TS, Magic_Book_JT, Magic_Book_WB, Magic_Book_HD, Magic_Book_ES
					close;
				}
			}
			mes "I'm sorry, but you don't have enough funds.";
			close;
		case 4:
			mes "[Lea]";
			mes "Oh, do you want the Superior Magic Books? For your information, borrowing those Magic Books requires many conditions and restrictions. Are you sure that you want it?";
			next;
			select("Yes.");
			mes "[Lea]";
			mes "I see. If you're determined to borrow the Superior Magic Books, please choose one of the following tyes of payment for the security deposit.";
			next;
			mes "[Lea]";
			mes "[12 Mystery Pieces and 100,000 zeny], [7 Oridecons and 100,000 zeny], or [1 Old Violet Box and 100,000 zeny]. Now how would you like to pay your deposit?";
			next;
			set .@Payment, select("Where can I find those items?:Let me think.:I'll pay with 12 Mystery Pieces and 100,000 zeny.:I'll pay with 7 Oridecons and 100,000 zeny.:I'll pay with 1 Old Violet Box and 100,000 zeny.")-1;
			mes "[Lea]";
			if (!.@Payment) {
				mes "Mystery Pieces can be obtained from machine creatures in the Juperos Dungeon, and they're the fountain of knowledge from the ancient civilization. Ah, I get excited thinking about those artifacts.";
				next;
				mes "[Lea]";
				mes "Oridecons can be obtained from Executioners, Gryphons, Jokers, and Abysmal Knights, but it'll be easier to collect Rough Oridecons than Oridecons.";
				next;
				mes "[Lea]";
				mes "You can refine Rough Oridecons to Oridecons at the Forge in town.";
				next;
				mes "[Lea]";
				mes "Old Violet Boxes can be obtained from Mimics, Megaliths, Orc Lords, Stormy Knights, and Osirises.";
				next;
				mes "[Lea]";
				mes "The boxes are a subject worthy of serious study since they're used to test Schrodinger's pet cat.";
				close;
			}
			if (.@Payment == 1) {
				mes "If you're unable to collect the items for the security deposit, I can offer you an alternate payment method.";
				next;
				mes "[Lea]";
				mes "How does 200,000 Rune-Midgartian zeny sound?";
				next;
				if(select("I'm sorry, but I can't pay that much.:Sounds good.") == 1) {
					mes "[Lea]";
					mes "I see.";
					close;
				}
				mes "[Lea]";
			}
			if ((.@Payment == 1 && Zeny > 199999) || (Zeny > 99999 && ((.@Payment == 2 && countitem(7094) > 11) || (.@Payment == 3 && countitem(984) > 6) || (.@Payment == 4 && countitem(617))))) {
				mes "What kind of Magic Book do you want?";
				next;
				set .@i, select("Let me think.:Magic Book (Earth Strain):Magic Book (Chain Lightning):Magic Book (Crimson Rock):Magic Book (Drain Life)")-1;
				mes "[Lea]";
				if (!.@i) {
					mes "No problem.";
					close;
				}
				if (countitem(6201+.@i)) {
					mes "You already have that Magic Book. You can't borrow a new book until you return the current one.";
					next;
					mes "[Lea]";
					mes "Don't you know how many others would want the book you already have? It's a bit selfish to want more than one, you know.";
					close;
				}
				if ((.@Payment == 1 && Zeny > 199999) || (Zeny > 99999 && ((.@Payment == 2 && countitem(7094) > 11) || (.@Payment == 3 && countitem(984) > 6) || (.@Payment == 4 && countitem(617))))) {
					mes "Thank you for your deposit. The book's return date is written on the lending card on the back cover of the book. Please try not to lose or damage the book and avoid paying compensation.";
					next;
					mes "[Lea]";
					mes "The Intermediate and Superior Magic Books must be returned upon borrowing the Ultimate Magic Book. Remember that you're just borrowing them, so make sure you take good care of those books.";
					if (.@Payment == 1) set Zeny, Zeny - 200000;
					else if (.@Payment == 2) delitem 7094,12; //Mystery_Piece
					else if (.@Payment == 3) delitem 984,7; //Oridecon
					else delitem 617,1; //Old_Violet_Box
					if (.@Payment > 1) set Zeny, Zeny - 100000;
					getitem 6201+.@i,1; //Magic_Book_ES_, Magic_Book_CL, Magic_Book_CR, Magic_Book_DL
					close;
				}
			}
			mes "I'm sorry, but you don't have enough funds.";
			close;
		case 5:
			if ((BaseLevel > 139) && (mac_book < 1) && ((getskilllv(2217) > 0) || (getskilllv(2213) > 0))) {
				mes "[Lea]";
				mes "Did... Did you just say the Ultimate Magic Book?";
				next;
				mes "[Lea]";
				mes "Oh, my....";
				mes "I can't believe someone actually wants that book.";
				next;
				select("Please don't say that you don't have it.");
				mes "[Lea]";
				mes "Frankly, I've never even seen the Ultimate Magic Book.";
				next;
				mes "[Lea]";
				mes "You should ask Master Velof if you want to know more about that book.";
				next;
				mes "[Lea]";
				mes "I'm sorry that I can't help you more than that.";
				set mac_book,1;
				close;
			}
			if ((BaseLevel > 139) && (mac_book > 0) && ((getskilllv(2217) > 0) || (getskilllv(2213) > 0))) {
				mes "[Lea]";
				mes "You should ask Master Velof for some information about that book.";
				close;
			}
			mes "[Lea]";
			mes "How about practicing your magic spells for now?";
			next;
			mes "[Lea]";
			mes "In order to obtain the Ultimate Magic Book, you must reach Level 140 and learn Tetera Bolt and Comet.";
			next;
			mes "[Lea]";
			mes "That book can't be used by just anyone, you know?";
			close;
		}
	}
	mes "[Lea]";
	mes "Welcome to the Magic Archive. You can read and borrow books from here under certain conditions.";
	close;
}

mid_camp,255,244,4	script	Galfos	735,{

	if (checkweight(1201,1) == 0) {
		mes "You're carrying too many items. Please make some room in your bag first.";
		close;
	}
	if ((MaxWeight - Weight) < 1000) {
		mes "You're overweight with items. Please lose some item weight first.";
		close;
	}
	if (Upper == 2) {
		mes "[Galfos]";
		mes "What are you, a baby?";
		mes "I'm not here to babysit. Get lost!";
		close;
	}
	if ((Class != Job_Warlock) && (Class != Job_Warlock_T) && (Class != Job_Baby_Warlock)) {
		mes "[Galfos]";
		mes "My right arm feels hot while my left arm feels cold. I can never get used to this weird weather!";
		close;
	}
	if (getskilllv(2230) < 1) {
		mes "[Galfos]";
		mes "Ah, I'll get myself in trouble if I stay here any longer. Maybe I'm already in...";
		close;
	}
	if ((BaseLevel < 140) || (getskilllv(2217) < 1) && (getskilllv(2213) < 1)) {
		mes "[Galfos]";
		mes "I'm sorry, but I don't talk to people that aren't even ready for this.";
		close;
	}
	if (mac_book < 2) {
		mes "[Galfos]";
		mes "You look strong, but you don't seem to have any business with me.";
		close;
	}
	if (mac_book == 2) {
		mes "[Galfos]";
		mes "What brings you to me?";
		next;
		select("I heard that you've studied the Ultimate Magic Book.");
		mes "[Galfos]";
		mes "Why, are you interested too?";
		mes "I didn't know someone would actually take an interest in that book. Yes, I'm studying that magic book. How did you find that out?";
		next;
		select("You're Velof's brother, right?");
		mes "[Galfos]";
		mes "Yes, I'm Galfos, and Velof is my brother.";
		next;
		mes "[Galfos]";
		mes "Wait a minute,";
		mes "did the old man recommend me to you?";
		next;
		select("That's right.");
		mes "[Galfos]";
		mes "Wow!";
		mes "This is surprising. He never took my research very seriously. I'm glad that he finally changed his mind.";
		next;
		mes "[Galfos]";
		mes "Heh! Your timing couldn't be better: I was looking for a test object.";
		next;
		select("A test object?");
		mes "[Galfos]";
		mes "Frankly, I'm only interested in creating the Ultimate Magic Book.";
		next;
		mes "[Galfos]";
		mes "I'm not good at using magic, not to mention that I prefer fists in fighting. Nevertheless, I find Magic Books to be incredibly intriguing.";
		next;
		mes "[Galfos]";
		mes "The problem is that I can't use the Ultimate Magic Book, even if I made one. That's why I can't really test it on my own.";
		next;
		mes "[Galfos]";
		mes "That's why I've been waiting for a true magic practitioner like you that can help me test my Ultimate Magic Book.";
		next;
		select("(What is he talking about?)");
		mes "[Galfos]";
		mes "My research is almost done,";
		mes "and I need to solve one last problem to create the Magic Book.";
		next;
		mes "[Galfos]";
		mes "To make the ancient Ultimate Magic Book, I need an artifact and some spells to fuse into it.";
		next;
		mes "[Galfos]";
		mes "I've perfectly restored the spells based on the ancient documents, but I still have no information about the necessary artifact.";
		next;
		mes "[Galfos]";
		mes "Ah, but there's a silver lining!";
		next;
		select("(Now we're getting somewhere!)");
		mes "[Galfos]";
		mes "Ha ha...";
		mes "There's a great archive in El Dicastes, the Capital City of the Evil Giants, where all knowledge in this world is stored.";
		next;
		mes "[Galfos]";
		mes "Maybe that's the place to find some information about the artifact for this Ultimate Magic Book.";
		next;
		mes "[Galfos]";
		mes "You know what to do, don't you? Find information about the artifact in the El Dicastes archive, using everything in your power.";
		next;
		mes "[Galfos]";
		mes "Afterwards, create and bring me the artifact. We'll talk about creating the Magic Book afterwards.";
		set mac_book,3;
		close;
	}
	if (mac_book == 3) {
		mes "[Galfos]";
		mes "You know what to do, don't you? Find information about the artifact in the El Dicastes archive, using everything in your power.";
		next;
		mes "[Galfos]";
		mes "Afterwards, create and bring me the artifact. We'll talk about creating the Magic Book afterwards.";
		close;
	}
	if (mac_book == 4) {
		mes "[Galfos]";
		mes "Oh, did you find";
		mes "anything useful?";
		next;
		set .@i, select("I've discovered everything about Comet.:I've mastered the zenith of Tetra Vortex.");
		mes "[Galfos]";
		if ((.@i == 1 && countitem(6195)) || (.@i == 2 && countitem(6196))) {
			mes "Are you kidding me? You already have the book!";
			close;
		}
		if ((.@i == 1 && checkquest(12218) == 2) || (.@i == 2 && checkquest(12219) == 2 && checkquest(12220) == 2 && checkquest(12221) == 2 && checkquest(12222) == 2)) {
			mes "Oh my, I sense incredible energy coming from you. This is great! Now we're ready to make the Ultimate Magic Book.";
			next;
			mes "[Galfos]";
			mes "There's one problem, though: I'm so broke that I don't even have enough money to buy the tools to make the book.";
			next;
			mes "[Galfos]";
			mes "I need at least ^0000aa1,000,000 zeny^000000 to buy all the necessary tools. Do you have the money?";
			next;
			if(select("Wh-what? No!:Sure.") == 1) {
				mes "[Galfos]";
				mes "Aw, you don't? It's disappointing, but there's nothing I can do. Come back when you have enough money, okay?";
				close;
			}
			mes "[Galfos]";
			if (Zeny >= 1000000) {
				mes "Alright then, let's get started!";
				next;
				specialeffect2 EF_DISPELL;
				progressbar "ffff00",4;
				specialeffect2 EF_LORD;
				set Zeny, Zeny - 1000000;
				getitem 6194+.@i,1; //Magic_Book_CM, Magic_Book_TV
				mes "[Galfos]";
				mes "Man, I almost lost my control to the incredible magic energy! Here's your Magic Book.";
				next;
				mes "[Galfos]";
				mes "Thank you for making my dream come true. Feel free to come back if you need another one of these books.";
				close;
			}
			mes "Hey, what did I tell you? I can't buy the tools to make the book without money!";
			close;
		}
		mes "Are you sure that you've found something? It doesn't seem like you've learned what we need...";
		close;
	}
	mes "[Galfos]";
	mes "Is there anything else you need?";
	close;
}

dic_in01,25,190,0	script	Mysterious Documents	844,{

	if (isequipped(2782) < 1) {
		mes "I better not forget to equip my ring.";
		close;
	}
	if (ep13_3_invite < 5) {
		mes "When you approach the documents, an Evil Giant that looks like the archive manager tries to call Guard Galton. You should get out of here quickly.";
		close;
	}
	if (checkquest(12165,"PLAYTIME") == 1) {
		mes "The documents are making you feel nauseous. You should come back later after your stomach settles.";
		close;
	}
	if (checkquest(12165,"PLAYTIME") == 2) {
		mes "You don't feel as nauseous anymore. It should be safe to proceed now.";
		erasequest 12165;
		close;
	}
	if ((BaseLevel < 140) || (getskilllv(2217) < 1) && (getskilllv(2213) < 1)) {
		mes "The documents in this container aren't legible. It's no use trying to read them.";
		close;
	}
	specialeffect2 EF_DISPELL;
	progressbar "ffff00",4;
	if (mac_book < 3) {
		mes "You have discovered records about magic, acceleration, and particle waves.";
		close;
	}
	if (mac_book == 3) {
		mes "You have discovered records about magic, acceleration, and particle waves. These documents must be the ones that Galfos is looking for.";
		set mac_book, 4;
		close;
	}
	if (mac_book == 4) {
		if (rand(1,10) == 1) {
			if (getskilllv(2213) > 0) {
				if (checkquest(12218) == 1) {
					mes "You already own this document.";
					close;
				}
				mes "^660066In order to create the essence of lava, you must refine 40 Burning Hearts at the hottest place on the 2nd floor of the Thor's Volcano Dungeon.^000000";
				mes "^660066You must do this by using the greatest power in that place. The Humans have used this method to study the acceleration of magic particles since ancient times.^000000";
				next;
				mes "You have discovered the ^990099Lava Essence Creation Method^000000. Please check your Quest window for more details.";
				specialeffect2 EF_STEAL;
				close2;
				setquest 12218;
				end;
			}
			mes "Nothing in this document looks useful.";
			close;
		}
		if (rand(1,10) == 2) {
			if (getskilllv(2217) > 0) {
				if (checkquest(12219) == 1) {
					mes "You already own this document.";
					close;
				}
				mes "^660066The essence of flame can be refined on stable ground on the 1st floor of the Thor's Volcano Dungeon. 10 Love Coals are necessary to refine the essence.^000000";
				mes "^660066According to Humans' information, this essence constitutes one of the four natural elements.^000000";
				next;
				mes "You have discovered the ^990099Flame Essence Creation Method^000000. Please check your Quest window for more details.";
				specialeffect2 EF_STEAL;
				close2;
				setquest 12219;
				end;
			}
			mes "Nothing in this document looks useful.";
			close;
		}
		if (rand(1,10) == 3) {
			if (getskilllv(2217) > 0) {
				if (checkquest(12220) == 1) {
					mes "You already own this document.";
					close;
				}
				mes "^660066I succeeded in refining the essence of glacier deep inside the 3rd floor of the Ice Cave. If you'd like to try, prepare 10 Ice Hearts and go to the following location.^000000";
				next;
				mes "You have discovered the ^990099Glacier Essence Creation Method^000000. Please check your Quest window for more details.";
				specialeffect2 EF_STEAL;
				close2;
				setquest 12220;
				end;
			}
			mes "Nothing in this document looks useful.";
			close;
		}
		if (rand(1,10) == 4) {
			if (getskilllv(2217) > 0) {
				if (checkquest(12221) == 1) {
					mes "You already own this document.";
					close;
				}
				mes "^660066I was able to refine the essence of fossil from old rocks on the 2nd floor of the Mine Dungeon. So far, that place is the most stable among all the testing grounds.";
				mes "If you'd like to try, prepare 10 Jubilees and go to the dungeon. Good luck.^000000";
				next;
				mes "You have discovered the ^990099Fossil Essence Creation Method^000000. Please check your Quest window for more details.";
				specialeffect2 EF_STEAL;
				close2;
				setquest 12221;
				end;
			}
			mes "Nothing in this document looks useful.";
			close;
		}
		if (rand(1,10) == 5) {
			if (getskilllv(2217) > 0) {
				if (checkquest(12222) == 1) {
					mes "You already own this document.";
					close;
				}
				mes "^660066In order to refine the essence of storm, I visited the Hermit's Checkerboard in Kunlun where the spirit of the wind resides.";
				mes "The refining process was easy, but I had a hard time finding the catalyst, Dragon Teeth.^000000";
				next;
				mes "You have discovered the ^990099Storm Essence Creation Method^000000. Please check your Quest window for more details.";
				specialeffect2 EF_STEAL;
				close2;
				setquest 12222;
				end;
			}
			mes "Nothing in this document looks useful.";
			close;
		}
		if (rand(1,10) == 10) {
			mes "You suddenly feel sick, and this nausea won't go away easily. You should try finding the documents you need later.";
			setquest 12165;
			close;
		}
		mes "Nothing here looks special.";
		close;
	}
	mes "You no longer need to search this place.";
	close;
}

function	script	Magic_Book_Essence	{
	if (MaxWeight - Weight < 1000) {
		mes "Please lighten your bag.";
		close;
	}
	if (checkquest(getarg(0)) == 1 && countitem(getarg(1)) >= getarg(2)) {
		specialeffect2 EF_BLIND;
		specialeffect2 EF_BEGINSPELL;
		progressbar "ffff00",4;
		delitem getarg(1),getarg(2);
		if (rand(2)) {
			mes "You have used "+getarg(2)+" "+getitemname(getarg(1))+"s to create ^999900"+getarg(3)+" Essence^000000.";
			next;
			mes "^008800The "+getarg(3)+" Essence will last permanently, unless there's a problem.^000000";
			completequest getarg(0);
			specialeffect2 EF_LORD;
			close;
		}
		mes "^008888You have failed to refine the essence using "+getarg(2)+" "+getitemname(getarg(1))+"s.^000000";
		close;
	}
	if (checkquest(getarg(0)) == 2) {
		mes "You've already created "+getarg(3)+" Essence in this area.";
		close;
	}
	mes "Someone already used this area.";
	close;
}

thor_v02,163,104,0	script	Powerful Lava Energy#33	844,{ callfunc "Magic_Book_Essence",12218,7097,40,"Lava"; end; }
thor_v01,185,91,0	script	Powerful Flame Energy#33	844,{ callfunc "Magic_Book_Essence",12219,7098,10,"Flame"; end; }
ice_dun03,137,148,0	script	Powerful Glacier Energy	844,{ callfunc "Magic_Book_Essence",12220,7561,10,"Glacier"; end; }
ein_dun02,181,124,0	script	Powerful Fossil Energy	844,{ callfunc "Magic_Book_Essence",12221,7312,10,"Fossil"; end; }
gon_dun02,252,198,0	script	Powerful Storm Energy#33	844,{ callfunc "Magic_Book_Essence",12222,7266,10,"Storm"; end; }