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
|
//===== eAthena Script =======================================
//= Global Job Function
//===== By: ==================================================
//= massdriller
//===== Current Version: =====================================
//= 0.2
//===== Compatible With: =====================================
//= eAthena 1.0 +
//===== Description: =========================================
//= Optimised scripts by moving all their checkers here.
//===== Additional Comments: =================================
//= For 2-1 Jobs
//= 0.2 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
//============================================================
//Assasin Check
function script Ass_check {
if(BaseJob==Job_Assassin) goto L_JobSin;
mes "[Angry looking man]";
if(baseClass == Job_Swordman) goto L_JobSwo;
if(baseClass == Job_Mage) goto L_JobMag;
if(baseClass == Job_Archer) goto L_JobArch;
if(baseClass == Job_Acolyte) goto L_JobAco;
if(baseClass == Job_Merchant) goto L_JobMerc;
if(baseClass == Job_Thief) goto L_JobOther;
L_JobNov:
mes "....HEY Novice!!! GET out of here now!! I won't be held responsible if anything bad happens to you.......";
emotion 0;
close;
L_JobSwo:
mes "....What are you doing here???";
emotion 1;
next;
mes "[Angry looking man]";
mes "Doing what you're ordered to do eh?........ You guys are nothing more than dogs that listen to their owners.............";
emotion 32;
close;
L_JobMag:
mes "...What's a mage like you doing here? You should be paying more attention to your training.....";
emotion 20;
close;
L_JobArch:
mes "Uh.... you're one of those people with bows right? Sorry but there are no cute pets here for u to kill..........";
emotion 4;
next;
mes "[Angry looking man]";
mes "Wait...... You're not here to create trouble eh!!? ....LEAVE AT ONCE!!";
emotion 0;
close;
L_JobAco:
mes "...Oh God's little helper..... What are you doing down in a dreadful place like this?";
mes "Trust me, you're not going to find any salvation here........ why don't you just run along ok?........";
emotion 20;
close;
L_JobMerc:
mes ".... What the??? Do you have any idea where you are??...... GREEDY SCAMMERS like you are not welcome here!!";
emotion 29;
close;
L_JobOther:
mes ".... Hmm.... although you're not an Assassin or Thief... I have to say I like your sense of style.";
close;
L_JobSin:
mes "[Assassin Huey]";
mes "Oohh, its you. You're...." + strcharinfo(0) + " right?";
next;
mes "[Assassin Huey]";
mes "Too bad there's nothing to do right now. You should go train more. Bye.";
close;
}
//Blacksmith Check
function script Bla_check {
if (BaseJob == 0) goto L_Nov;
if (baseClass == Job_Swordman) goto L_Sword;
if (baseClass == Job_Acolyte) goto L_Aco;
if (baseClass == Job_Thief) goto L_Thief;
if (baseClass == Job_Mage) goto L_Wiz;
if (baseClass == Job_Archer) goto L_Arc;
if (BaseJob == 10) goto L_Black;
mes "Only Merchants can become Blacksmiths.";
close;
L_Nov:
if(sex==0) mes "...Hello little lady! If you wish to be a blacksmith, you have to be a merchant first!";
if(sex==1) mes "Hmmm, you look like you wish to be a blacksmith! Sorry, but only merchants can be blacksmiths!.";
close;
L_Sword:
mes "Hello! Come here to order a sword? Sorry, but I have some paperwork to do, so I can't forge anything now.";
close;
L_Arc:
mes "Hmmm, sorry, but we're not hiring anyone that isn't a merchent.";
close;
L_Wiz:
mes "Interested in training? Our guild cannot assist magic users is such matters.";
close;
L_Aco:
mes "Oh! A Holy one...! Do me a favor and bless the sword I'm crafting!";
close;
L_Thief:
mes "Sorry, but this is more of a office, so there's nothing worth money. We CAN do knife forges though.";
close;
L_Black:
mes "Hey! Been a while, running a errand for Christopher? I feel like my hammer is getting rusty after all this office work.";
close;
}
//Hunter Check
function script Hun_check {
if(BaseJob==Job_Hunter) goto L_Hunt;
if(baseClass == Job_Archer) goto L_Other;
if(baseClass == Job_Swordman) goto L_Swo;
if(baseClass == Job_Mage) goto L_Mage;
if(baseClass == Job_Thief) goto L_Thf;
if(baseClass == Job_Acolyte) goto L_Aco;
if(baseClass == Job_Merchant) goto L_Merc;
L_Nov:
mes "[Hunter Sharon]";
mes "What's a novice like you doing here? Leave, we have nothing for you.";
emotion 1;
close;
L_Swo:
mes "[Hunter Sharon]";
mes "A follower of the way of the blade! We have nothing for you here so please leave.";
close;
L_Mage:
mes "[Hunter Sharon]";
mes "Hello mage type person. If you have no business here, please leave,";
close;
L_Aco:
mes "[Hunter Sharon]";
mes "Good day, religious zealot! It's nice to meet you and all, but you have no buisiness here.";
close;
L_Merc:
mes "[Hunter Sharon]";
mes "Hey, how's buisiness? Perhaps if you want to sell something, go back to town.";
close;
L_Thf:
mes "[Hunter Sharon]";
mes "Eeep! There's nothing to steal here!! Leave us alone..... go rob an old lady or something......";
emotion 23;
close;
L_Hunt:
mes "[Hunter Sharon]";
mes "What up! "+strcharinfo(0)+" Why did you come back? Falcon run away or something? Te hehe.";
emotion 18;
next;
mes "[Hunter Sharon]";
mes "I hope you didn't think you could get free stuff from us just because your part of our guild now......";
close;
L_Other:
mes "[Hunter Sharon]";
mes "What are YOU doing here? Did you come to do a little song and dance... ke.. keke....kekekeHahahahhaha!!!";
emotion 18;
close;
}
//Knight Check
function script Kni_check {
if(BaseJob != Job_Swordman) goto L_NotSwo;
mes "Well then, first fill out this application form....";
next;
mes "...(you fill out the form and hand it back)...";
next;
mes "[Chivalry Captain Herman]";
if(JobLevel < 40) goto L_NotLvl;
mes "Impressive. You have the job qualifications to become a knight..., however you will need much more than that to actually become one.";
next;
return;
L_NotLvl:
mes "Hmm...it looks like you have not reached Job Level 40 yet. Please come back when you do. I shall be waiting here.";
close;
L_NotSwo:
if(BaseJob == Job_Knight) goto sL_JobKni;
if(BaseJob == Job_Novice) goto sL_JobNov;
sL_JobOther:
mes "I'm sorry but only Swordsmen can become Knights.";
close;
sL_JobKni:
mes "...(sighs)...what are you doing here WASTING my time?? GO FORTH!!, and continue protecting Rune Midgard my young Knight.";
emotion 32;
close;
sL_JobNov:
mes "Hahahaha!! You have no job experience what so ever and yet you stumble in here asking to be a knight. Hahahaha!!";
emotion 18;
next;
mes "[Chivalry Captain Herman]";
mes "You must first become a Swordsman before even thinking about becoming a Knight. Now scurry along little novice. Hahahahaha!!!";
close;
}
//Priest Check
function script Pri_check {
if (BaseJob == Job_Novice) goto L_Novice;
if (BaseJob == Job_Priest) goto L_Priest;
mes "May God bless you my child.";
next;
mes "[Father Thomas]";
mes "Please feel free to rest, the church is the safest place in this world.";
next;
mes "[Father Thomas]";
mes "I hope God will bless you.";
return;
L_Novice:
mes "May God bless you, child. This is the Prontera Church. What are you here for?";
next;
menu "I want to become an Acolyte.",M_0a, "I want to become a ^5533FFPriest^000000.",M_0b, "I'm just walking around.",M_0End;
M_0a:
mes "[Father Thomas]";
mes "Haha.. so you want to become an Acolyte eh? To apply to become an Acolyte, please go to the room opposite of here.";
close;
M_0b:
mes "[Father Thomas]";
mes "Haha...in order to become a priest you must first become an Acolyte. To become an Acolyte, go to the room opposite of here.";
close;
M_0End:
mes "[Father Thomas]";
mes "Please feel free to rest here. The church is a sanctuary for all those, who seek to escape the outside world.";
next;
mes "[Father Thomas]";
mes "May God be with you in your thoughts and prayers.";
close;
L_Priest:
mes "God bless you, child. You are here again because you listened to God's orders.";
next;
mes "[Father Thomas]";
mes "I don't know if God's sons and daughters are going on the path of light or the path of darkness... I can only pray for the best.";
next;
mes "[Father Thomas]";
mes "So why are you here today?";
next;
menu "I just wanted to see how you were.",M_1a, "I'm here to help the Acolytes.",M_1b, "Life is really hard... I was wondering if you could help.",M_1End;
M_1a:
mes "[Father Thomas]";
mes "Oh, well I'm fine thank you. Please send my regards to all of the other Priests, and Priestess.";
next;
mes "[Father Thomas]";
mes "We, the ones who follow the devine path, are here for one reason.... to obey Gods orders.";
mes "If you come across anyone who needs help, please remember to assist them in any way you can...";
close;
M_1b:
mes "[Father Thomas]";
mes "Oh...thats a great idea! Since you're a priest, you can't forget that you have to help the Acolytes when they need it.";
emotion 5;
next;
mes "[Father Thomas]";
mes "Even so, you must be carefull not to do everyting for them. It is important that they gain their own experiences through training ";
next;
mes "[Father Thomas]";
mes "In order to go in and help you'll need a ^5533FFROSARY^000000.";
mes "There will be 3 trials for the Acolyte to face, but in only 2 of them will your assistance be needed.";
next;
mes "[Father Thomas]";
mes "Are you prepared to help?";
next;
menu "Yes, i will help them with all my might.",sM_1a, "I will come back later.",sM_1End;
sM_1a:
if (countitem(2608) < 1) goto sL_NoRosary;
mes "[Father Thomas]";
mes "Very well then. I will send you to an Acolyte in just a moment.";
next;
mes "[Father Thomas]";
mes "I hope you will also take this opportunity to teach them what it means to be a good Priest.";
next;
if((getareausers("job_prist.gat", 8, 34, 39,109)) == 1) warp "job_prist.gat", 24, 44;
if((getareausers("job_prist.gat", 160, 14, 175, 178)) == 1) warp "job_prist.gat", 98, 40;
if((getareausers("job_prist.gat", 90, 34, 105,105)) == 1) warp "job_prist.gat", 168, 17;
mes "[Father Thomas]";
mes "Hmm........ wait a minute..... let me check my list.... Either no one is taking the test right now, or another Priest is already helping out.";
mes "In any case please check with me again later.";
close;
sL_NoRosary:
mes "[Father Thomas]";
mes "Hmm... it doesn't look like you have a ^5533FFROSARY^000000 with you.";
next;
mes "[Father Thomas]";
mes "If you want to help the Acolytes, you must first get a ^5533FFROSARY^000000.";
mes "Please come back when you have one.";
close;
sM_1End:
mes "[Father Thomas]";
mes "Oh, alright. Just remember to bring a ^5533FFFROSARY^000000 when you come back.";
close;
M_1End:
mes "[Father Thomas]";
mes "Keep up the good work. I will ask God to ease your pain.";
next;
mes "[Father Thomas]";
mes "God, one of your children is suffering. Please use your powers, to heal the wounds on this battered body.....";
next;
mes "[Father Thomas]";
mes "Please look after us, so that under any condition we will be able to think clearly and maintain our faith";
percentheal 100,100;
next;
mes "[Father Thomas]";
mes "You should be feeling better now. Please stay on the path to rightousness and may God bless you.";
close;
}
//Wizard Checker 1
function script Wiz1_check {
if(baseClass == Job_Mage) goto L_Magic;
if(baseClass == Job_Acolyte) goto L_Holy;
L_Other:
mes "[Dog]";
mes "Sheesh....... Why would someone who can't even cast a single spell come all the way up here???";
next;
mes "[Dog]";
mes "If you're that bored, do the world a favor and climb to the top of this building from the outside, then do some acrobatics....";
emotion 32;
next;
mes "[Dog]";
mes "~WOOF~ Get lost! I don't have time for people like you!!";
emotion 27;
close;
L_Holy:
mes "[Dog]";
mes "Eeek! What's a holy type person doing up here? I thought you people didn't like magic....";
mes "You religious types are always calling it the 'dark arts'......... ooooh scary!!!...... ~grrr!~WOOF!~";
close;
L_Magic:
mes "[Dog]";
mes "Ah! High level magic users, welcome. It's always nice to see experienced magic users around here.";
mes "Actually it's nice to see them anywhere! ~Woof!~";
close;
}
function script Wiz2_check {
if(BaseJob == Job_Wizard) goto L_Wizard;
if(BaseJob == Job_Novice) goto L_Novice;
L_Other:
mes "Hmm? What brings you all the way up here? If you have nothing to do here, please leave.";
mes "This place is for wizards only. =P";
next;
mes "[Catherine Medichi]";
mes "Try not to fall as you go back down....";
close;
L_Novice:
mes "Awwww, a little novice! How cute! This place is for Wizards only though.";
emotion 14;
next;
mes "[Catherine Medichi]";
mes "If you're interested in magic, the ^0000FFMagician's Guild^000000 is the place for you.";
close;
L_Wizard:
mes "What do you need fellow Wizard? If it's nothing, please leave...";
next;
mes "[Catherine Medichi]";
if(sex==1) mes "... Of course, if your here to ask me out... (*giggles*)....";
if(sex==0) mes "If you get yourself a boyfriend, feel free to drop by and show him off. XD";
emotion 3;
close;
}
|