root/npc/jobs/1-1/thief.txt @ 1

Revision 1, 18.0 kB (checked in by jinshiro, 17 years ago)
Line 
1//===== eAthena Script =======================================
2//= Thief Job Quest
3//===== By: ==================================================
4//= eAthena dev team
5//===== Current Version: =====================================
6//= 1.7
7//===== Compatible With: =====================================
8//= eAthena SVN
9//===== Description: =========================================
10//= [Aegis Conversion]
11//= Job quest for Thief classes
12//===== Additional Comments: =================================
13//= Fully working
14//= v1.1 Added instant job change for High Novice [Lupus]
15//= 1.3 Added Baby Class support [Lupus]
16//= v1.4 Optimised and moved first checker to Jfunc1-1 [massdriller]
17//= Fixed possible EXP abuse [Lupus]
18//= 1.5 Now saves/restores all quest skills [Lupus]
19//= 1.6 Merged back JFunc [Lupus] 1.6a typos
20//= 1.7 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
21//=     No longer uses function "F_ToHigh"
22//============================================================
23
24moc_prydb1,39,129,2     script  Thief Guide     69,{
25        if (Upper == 1) {
26                if (ADVJOB == Job_Assassin_Cross || ADVJOB == Job_Stalker) {
27                        if (Class == Job_Novice_High) {
28                                mes "[Thief Guide]";
29                                mes "Huh? Do I know you? It's creepy that you seem so familiar. You don't have a twin, do you?";
30                                next;
31                                if (getskilllv("NV_BASIC") < 9) {
32                                        mes "[Thief Guide]";
33                                        mes "What, do you want to be a Thief? I'm sorry, but you look like you need more training.";
34                                        next;
35                                        mes "[Thief Guide]";
36                                        mes "Take your time and learn all the Basic Skills, will you? Well then, see you later~!";
37                                        close;
38                                }
39                                mes "[Thief Guide]";
40                                mes "Well, I got this feeling like you've been through a lifetime of fighting, so I'm promoting you to a Thief right this minute. I better give you tough guys what you want...";
41                                next;
42                                skill 143,0,0;
43                                jobchange Job_Thief_High;
44                                skill 149,1,0;
45                                skill 150,1,0;
46                                skill 151,1,0;
47                                skill 152,1,0;
48                                mes "[Thief Guide]";
49                                mes "Since you've become a Thief, live as a Thief. Now, go for it! Next~";
50                                close;
51                        }
52                        else {
53                                mes "[Thief Guide]";
54                                if (sex)
55                                        mes "Hey, dude.";
56                                else
57                                        mes "Hey, baby~";
58                                close;
59                        }
60                }
61                else {
62                        mes "[Thief Guide]";
63                        if (sex)
64                                mes "Hey, dude.";
65                        else
66                                mes "Hey, baby.";
67                        mes "...Hey! You look too goody-goody to want to be a Thief!! Now scram, I'm busy. Next!";
68                        close;
69                }
70        }
71        if (BaseJob == Job_Thief) {
72                mes "[Thief Guide]";
73                mes "If you have a problem, feel free to speak to me anytime, alright?";
74                close;
75        }
76        else if (BaseJob != Job_Novice && BaseJob != Job_Thief) {
77                mes "[Thief Guide]";
78                mes "What the heck...?";
79                switch(Class) {
80                case 1:
81                        mes "Huh.";
82                        mes "Now, that's";
83                        mes "a big sword.";
84                        next;
85                        mes "[Thief Guide]";
86                        mes "So...";
87                        mes "Trying to make";
88                        mes "up for something";
89                        mes "...Buddy?";
90                        break;
91                case 2:
92                        mes "What's a Mage doin' here? Shouldn't you be doing card tricks elsewhere? Oh well, it's a free country...";
93                        next;
94                        mes "[Thief Guide]";
95                        mes "Oh wait,";
96                        mes "it's not...";
97                        mes "Get outta here!";
98                        break;
99                case 3:
100                        mes "Man, shouldn't you";
101                        mes "Archers be playing";
102                        mes "in the forest";
103                        mes "or something?";
104                        break;
105                case 4:
106                        mes "You know we all steal for a living, right? What are you doing in this kinda place, Acolyte?";
107                        break;
108                case 5:
109                        mes "You're a Merchant,";
110                        mes "right? Why are you";
111                        mes "walking into a den";
112                        mes "of Thieves?!";
113                        next;
114                        mes "[Thief Guide]";
115                        mes "It's like you're begging";
116                        mes "us to steal from you!";
117                        mes "Come on, hurry and";
118                        mes "get outta here~";
119                        break;
120                case 8:
121                        mes "Oh my God...";
122                        mes "Am I dying?";
123                        next;
124                        mes "[Thief Guide]";
125                        mes "Why else would a Priest come here? I guess I better start confessing all of my misdeeds.";
126                        close;
127                case 12:
128                        mes "Didn't you use to be one of us?! Man, you changed. You seem real dangerous now...";
129                        close;
130                case 17:
131                        mes "Man, you got real cool all of a sudden! You must have some skills I can only dream of!";
132                        close;
133                }
134                next;
135                mes "[Thief Guide]";
136                mes "*Sigh* Look, there's really no need for you to be in this kind of place. You oughta go where you ought to go.";
137                close;
138        }
139        if (job_thief_q == 3 && countitem(1069) > 0 || countitem(1070) > 0) {
140                mes "[Thief Guide]";
141                mes "Hmmm?";
142                mes "You gathered Mushrooms for";
143                mes "the Thief test, right?";
144                next;
145                mes "[Thief Guide]";
146                mes "Here, talk to the other guy right next to me. He's the one in charge of checking your Mushrooms.";
147                close;
148        }
149        else if (job_thief_q == 3) {
150                mes "[Thief Guide]";
151                mes "So how was the";
152                mes "Mushroom Farm?";
153                mes "Have any fun?";
154                next;
155                if (select("Yeah, kinda Cool.:It was horrible.") == 1) {
156                        mes "[Thief Guide]";
157                        mes "Heh heh! That's a good attitude. In our line of work, you gotta enjoy getting your hands dirty, one way or another.";
158                        close;
159                }
160                mes "[Thief Guide]";
161                mes "Yeah? I've been there too, so I can see why that place isn't everyone's cup of tea. Still, being a Thief isn't all glamour and trendy night life.";
162                close;
163        }
164        if (job_thief_q == 2) {
165                mes "[Thief Guide]";
166                mes "Hey, whaddya doin' here? Aren't you supposed to be gathering Mushrooms? Or did you need it explained to you again?";
167                next;
168                if  (select("Yes.:No, that's okay.") == 1) {
169                        mes "[Thief Guide]";
170                        mes "*Sigh* Well, there's always one in the bunch. Alright, listen carefully.";
171                        next;
172                        mes "[Thief Guide]";
173                        mes "Alright, for your test, you gotta steal Mushrooms from a farm. Don't worry, the guy who owns the farm deserves to be robbed.";
174                        next;
175                        mes "[Thief Guide]";
176                        mes "Anyway, you gotta gather two kinds of Mushrooms: ^0000FFOrange Net Mushrooms^000000 and ^0000FFOrange Gooey Mushrooms^000000.";
177                        next;
178                        mes "[Thief Guide]";
179                        mes "Be careful, since there are monsters are the farm that are there to protect the Mushrooms. So this will be no walk in the park.";
180                        next;
181                        mes "[Thief Guide]";
182                        mes "When you come back here after gathering Mushrooms, you'll be graded on the Mushrooms you've collected.";
183                        next;
184                        mes "[Thief Guide]";
185                        mes "Each Orange Net Mushroom gets you 3 points, and you get 1 point for each Orange Gooey Mushroom. You need a total of 25 points to pass the test.";
186                        next;
187                        mes "[Thief Guide]";
188                        mes "Go outside and keep going ahead toward the Eastern Field of the Pyramids. Then you will see one of our comrades between two columns.";
189                        next;
190                        mes "[Thief Guide]";
191                        mes "Speak to that guy, and he'll take you to the farm through the backdoor.";
192                        next;
193                        mes "[Thief Guide]";
194                        mes "On that field, I think his coordinates are '^FF0000141, 125^000000.' Just type ^3355FF/where^000000 in the right side of your chat box to check your present coordinates.";
195                        close;
196                }
197                mes "[Thief Guide]";
198                mes "Huh. For a second there, I thought you had something really important to tell me.";
199                close;
200        }
201        mes "[Thief Guide]";
202        if (job_thief_q == 0) {
203                mes "What brings you down";
204                mes "here to this rathole?";
205        }
206        else {
207                mes "Ah...";
208                mes "You came back.";
209                mes "Are you sure you're";
210                mes "ready to try again?";
211        }
212        next;
213        if (select("Hey, I came here to be a Thief!:Nah, I'm just looking around.") == 1) {
214                if (job_thief_q == 0) {
215                        mes "[Thief Guide]";
216                        mes "Heh, I like your confidence. Still, you know being a Thief isn't all what it's cracked up to be.";
217                        next;
218                        mes "[Thief Guide]";
219                        mes "Still...";
220                        mes "Do you really";
221                        mes "want to be";
222                        mes "a Thief?";
223                        next;
224                        switch(select("Yeah.:No, just wasting your time.:Why did you become a Thief?")) {
225                        case 1:
226                                mes "[Thief Guide]";
227                                mes "Really...";
228                                break;
229                        case 2:
230                                mes "[Thief Guide]";
231                                mes "Yeah...";
232                                mes "I can see that.";
233                                break;
234                        case 3:
235                                mes "[Thief Guide]";
236                                mes "Me...?";
237                                mes "I had no choice at the time. It was either steal or starve. But it's not like I need to give you my life story.";
238                                break;
239                        }
240                        next;
241                        mes "[Thief Guide]";
242                        mes "So do you want to";
243                        mes "apply to become";
244                        mes "a Thief or not?";
245                        next;
246                        switch(select("Yes, I will.:I'm too scared to be a Thief!")) {
247                        case 1:
248                                mes "[Thief Guide]";
249                                mes "Alright, tell";
250                                mes "me your name.";
251                                next;
252                                mes "[Thief Guide]";
253                                mes "" + strcharinfo(0) + "?";
254                                mes "What kind of name is " + strcharinfo(0) + "? Anyway, give me a second.";
255                                set job_thief_q,1;
256                                next;
257                                mes "[Thief Guide]";
258                                mes "Alright, your registration has been processed. Okay, you can begin your test if you're ready.";
259                                next;
260                                switch(select("Yeah, I'm ready.:No, I'm not ready yet.")) {
261                                case 1:
262                                        break;
263                                case 2:
264                                        mes "[Thief Guide]";
265                                        mes "Not ready?";
266                                        mes "How can you";
267                                        mes "not be ready?!";
268                                        close;
269                                }
270                                break;
271                        case 2:
272                                mes "[Thief Guide]";
273                                mes "Too scared?!?";
274                                mes "Hahahahahahah!";
275                                mes "Oh, please...!";
276                                mes "That's hilarious!";
277                                close;
278                        }
279                }
280                else {
281                        mes "[Thief Guide]";
282                        mes "Okay...";
283                        mes "Give me";
284                        mes "one second.";
285                        next;
286                }
287                mes "[Thief Guide]";
288                mes "Your name is...";
289                mes strcharinfo(0) + "? Um, where is it? Ah, here it is. Let's see...";
290                next;
291                mes "[Thief Guide]";
292                if (getskilllv("NV_BASIC") < 9) {
293                        mes "Isn't that cute? I can see you're ambitious, but you gotta learn all of the Basic Skills before you can become a Thief.";
294                        close;
295                }
296                mes "Alright. I looked at your Felony Record, and you seem to have a very interesting history. You might have what it takes to be a Thief.";
297                next;
298                mes "[Thief Guide]";
299                mes "Because I feel like it, I now decree that you have passed this interview. Good work!";
300                set job_thief_q,2;
301                next;
302                mes "[Thief Guide]";
303                mes "Now, your actual abilities will need to be tested. Do you know anything about the test?";
304                next;
305                switch(select("Yes, I do.:Sorry, I don't.")) {
306                case 1:
307                        mes "[Thief Guide]";
308                        mes "Oh yeah? Well, this makes things a lot easier.";
309                        break;
310                case 2:
311                        mes "[Thief Guide]";
312                        mes "Alright, let me inform you then. Listen carefully. This test decides if you are worthy of becoming a Thief.";
313                        next;
314                        mes "[Thief Guide]";
315                        mes "You will be sneaking to Shibu's Farm. He is the worst Merchant, in terms of character, in Morroc.";
316                        next;
317                        mes "[Thief Guide]";
318                        mes "Alright, for your test, you gotta steal Mushrooms from his farm. Don't worry, that guy deserves to be robbed.";
319                        next;
320                        mes "[Thief Guide]";
321                        mes "Anyway, you gotta gather two kinds of Mushrooms: ^0000FFOrange Net Mushrooms^000000 and ^0000FFOrange Gooey Mushrooms^000000.";
322                        next;
323                        mes "[Thief Guide]";
324                        mes "Be careful, since there are monsters are the farm that are there to protect the Mushrooms. So this will be no walk in the park.";
325                        next;
326                        mes "[Thief Guide]";
327                        mes "When you come back here after gathering Mushrooms, you'll be graded on the Mushrooms you've collected.";
328                        next;
329                        mes "[Thief Guide]";
330                        mes "Each Orange Net Mushroom gets you 3 points, and you get 1 point for each Orange Gooey Mushroom. You need a total of 25 points to pass the test.";
331                        next;
332                        mes "[Thief Guide]";
333                        mes "Go outside and keep going ahead toward the Eastern Field of the Pyramids. Then you will see one of our comrades between two columns.";
334                        next;
335                        mes "[Thief Guide]";
336                        mes "Speak to that guy, and he'll take you to the farm through the backdoor.";
337                        next;
338                        mes "[Thief Guide]";
339                        mes "On that field, I think his coordinates are '^FF0000141, 125^000000.' Just type ^3355FF/where^000000 in the right side of your chat box to check your present coordinates.";
340                }
341                next;
342                mes "[Thief Guide]";
343                mes "Don't forget to make plans and prepare yourself before you go inside the Mushroom Farm. Move as quickly as you can and try not to get killed, alright?";
344                close;
345        }
346        close;
347}
348
349moc_prydb1,42,133,2     script  Comrade 118,{
350        if (BaseJob == Job_Thief) {
351                mes "[Brad]";
352                mes "We don't have any special events yet. Come some other time when there's news, alright?";
353                close;
354        }
355        else if (BaseJob != Job_Novice && BaseJob != Job_Thief) {
356                mes "[Comrade]";
357                mes "Um...";
358                mes "You don't look";
359                mes "like a Thief.";
360                next;
361                mes "[Comrade]";
362                mes "What the heck are";
363                mes "you doing here anyway?";
364                close;
365        }
366        if (job_thief_q == 0 || job_thief_q == 1) {
367                mes "[Comrade]";
368                mes "What's the matter? If you want to be a Thief, speak to the girl beside me.";
369                close;
370        }
371        else if (job_thief_q == 2) {
372                mes "[Comrade]";
373                mes "Did you pass the interview?";
374                mes "Then what are you waiting for?";
375                close;
376        }
377        else if (job_thief_q == 3) {
378                mes "[Comrade]";
379                mes "Ah, the guide told me about you. So, let me check your mushrooms...";
380                if (countitem(1069) == 0 && countitem(1070) == 0) {
381                        next;
382                        mes "[Comrade]";
383                        mes "What the hell...";
384                        mes "You don't have any Mushrooms at all! Go back and get them. Otherwise, you won't pass the test and become a Thief!";
385                        close;
386                }
387                next;
388                set .@thief_item1,countitem(1069) * 3;
389                set .@thief_item2,countitem(1070);
390                set .@total_thief,.@thief_item1 + .@thief_item2;
391                set .@money_thief,((.@thief_item1 * 5) + (.@thief_item2 * 2)) + 200;
392                mes "[Comrade]";
393                if (countitem(1069) != 0) {
394                        mes "First, let me check the Orange Net Mushrooms you got.";
395                        mes "Huh, " + countitem(1069) + " of them.";
396                }
397                if (countitem(1070) != 0)
398                        mes "Now I'll just check your Orange Gooey Mushrooms. That's " + countitem(1070) + " you gathered.";
399                next;
400                mes "[Comrade]";
401                mes "So that would";
402                mes "bring your total to...";
403                next;
404                mes "[Comrade]";
405                mes "Hmmm. " + .@total_thief + " degrees, multiplied by the speed of light, divided by the integral of pi times height plus the absolute value of politics...";
406                next;
407                mes "[Comrade]";
408                mes "Okay!";
409                mes "I got it.";
410                next;
411                mes "[Comrade]";
412                if (.@total_thief > 25) {
413                        mes "You got more";
414                        mes "than 25 points!";
415                        mes "Awesome!";
416                }
417                else if (.@total_thief == 25) {
418                        mes "Exactly 25 points!";
419                        mes "You did it! Badass!";
420                }
421                else {
422                        mes "Definitely less than the 25 points you need to pass. Go out there and get me more Mushrooms!";
423                        close;
424                }
425                next;
426                mes "[Comrade]";
427                mes strcharinfo(0) + "...";
428                mes "You have passed the official Thief Test. You are now one of us.";
429                if (countitem(1069) != 0) delitem 1069,countitem(1069); //Mushroom_Of_Thief_1
430                if (countitem(1070) != 0) delitem 1070,countitem(1070); //Mushroom_Of_Thief_2
431                callfunc "Job_Change",Job_Thief;
432                callfunc "F_ClearJobVar";
433                next;
434                mes "[Comrade]";
435                mes "Congratulations on becoming a Thief! From now, be an honorable representative of the Thief's Guild.";
436                next;
437                mes "[Comrade]";
438                mes "If you bring disgrace to our guild, you will be killed. I expect you to bring our comrades pride.";
439                next;
440                mes "[Brad]";
441                mes "*Ahem* Welcome to the Guild, comrade! I'm Brad, and I'm in charge of human resources here.";
442                next;
443                mes "[Brad]";
444                mes "Here is a small subsidy for a Newbie like you. Spend it whereever you want. Alright then, I'll see you around~";
445                set zeny,zeny+.@money_thief;
446                close;
447        }
448}
449
450moc_ruins,141,125,3     script  Mr. Irrelevant  83,{
451        if (BaseJob == Job_Thief) {
452                mes "[Mr. Irrelevant]";
453                mes "Ah, I see that you are now a Thief. I always knew you'd join us.";
454                next;
455                mes "[Mr. Irrelevant]";
456                mes "Stealing from a Mushroom farm is too easy for you now. You should build up your skills and master our craft.";
457                close;
458        }
459        else if (BaseJob != Job_Novice && BaseJob != Job_Thief) {
460                mes "[Mr. Irrelevant]";
461                switch(rand(4)) {
462                case 1:
463                        mes "I could use a good, hard drink.";
464                        close;
465                case 2:
466                        mes "Gimme your money.";
467                        next;
468                        mes "[Mr. Irrelevant]";
469                        mes "Kidding, I'm off the clock.";
470                        close;
471                case 3:
472                        mes "WHO YOU CALLING A PSYCHO?!?!";
473                        close;
474                case 4:
475                        mes "I've got nothing to say to you. Would you mind leaving me alone?";
476                        close;
477                default:
478                        mes "Today looks like a good day to go to the pyramids and hunt with some of my friends.";
479                        close;
480                }
481        }
482        if (job_thief_q == 3) {
483                mes "[Mr. Irrelevant]";
484                mes "Hahahahaha~!";
485                mes "You haven't";
486                mes "passed the test yet?";
487                mes "Alright, I'll let you in...";
488                close2;
489                switch(rand(5)) {
490                case 1: warp "job_thief1",228,106; end;
491                case 2: warp "job_thief1",38,50; end;
492                case 3: warp "job_thief1",66,331; end;
493                case 4: warp "job_thief1",196,331; end;
494                default: warp "job_thief1",309,234; end;
495                }
496        }
497        else if (job_thief_q == 2) {
498                mes "[Mr. Irrelevant]";
499                mes "Hmm...";
500                mes "You've come to take the test, right? I can see in your eyes that you know something.";
501                next;
502                mes "[Mr. Irrelevant]";
503                mes "Your name is " + strcharinfo(0) + "? Ah, it's on the list. Alright, I'll let you into the Mushroom Farm , but I can't guarantee your safety...";
504                close2;
505                set job_thief_q,3;
506                switch(rand(5)) {
507                case 1: warp "job_thief1",228,106; end;
508                case 2: warp "job_thief1",38,50; end;
509                case 3: warp "job_thief1",66,331; end;
510                case 4: warp "job_thief1",196,331; end;
511                default: warp "job_thief1",309,234; end;
512                }
513        }
514        else if (job_thief_q == 1) {
515                mes "[Mr. Irrelevant]";
516                mes "There is this strange smell coming from... You. Now why would that be?";
517                close;
518        }
519        mes "[Mr. Irrelevant]";
520        mes "Hey Novice! Why don't you join the ranks of the Thief Guild? You newbies are always welcome to join us and our selfish cause.";
521        next;
522        mes "[Mr. Irrelevant]";
523        mes "You can get more information in the Underground Room in the Pyramid 1 BF.";
524        close;
525}
526
527// Monsters
528//============================================================
529job_thief1,0,0,0,0      monster Orange Mushroom 1182,180,0,0,0
530job_thief1,0,0,0,0      monster Fabre   1184,50,0,0,0
531job_thief1,0,0,0,0      monster Chonchon        1183,50,0,0,0
532job_thief1,0,0,0,0      monster Spore   1014,30,0,0,0
533
534//============================================================
535// mapflag
536//============================================================
537job_thief1      mapflag nomemo
538job_thief1      mapflag noteleport
539job_thief1      mapflag nosave  SavePoint
540job_thief1      mapflag nopenalty
541job_thief1      mapflag nobranch
Note: See TracBrowser for help on using the browser.