summaryrefslogtreecommitdiff
path: root/npc/jobs/1-1e/gunslinger.txt
blob: e7fa1edfd3e640c925402cb6af70dc550c73b032 (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
//===== eAthena Script ======================================= 
//= Gunslinger Job Quest
//===== By: ================================================== 
//= erKURITA & RockmanEXE
//= Direct credits quote from RockmanExe: 
//= "info provided by RockmanEXE cause he pwnz0rz yer arse"
//= DON'T REMOVE THIS! (by request of him, he provided all
//= the info regarding the quests and shops.)
//===== Current Version: ===================================== 
//= 1.8
//===== Compatible With: ===================================== 
//= eAthena SVN
//===== Description: ========================================= 
//= "Semi" Official Gunslinger Quest ~ The text isn't the same
//= but it does the things it has to do :P
//===== Additional Comments: ================================= 
//= 1.0 Made the NPC [erKURITA]
//= 1.5 Couple fixes to the npc, aswell as adding the missing
//=	  3 green herbs. [erKURITA]
//= 1.6 job number->const, commonized variable name,
//= 	optimized [Lupus]
//= 1.7 Now uses only ONE variable GUNS_Q [Lupus]
//= 1.7a Grammar fixes, few spelling fixes, etc [CBMaster]
//= 1.7b Parenthesis fixes [KarLaeda]
//= 1.8 Fixed the reward you can get [Playtester]
//= 1.9 Removed some 'clever' script constructs [ultramage]
//============================================================ 

que_ng,152,167,3	script	Gunslinger Jobchanger	901,{

	set .@npcname$, "[Armsmith]";
	if (Class == Job_Novice) {
		if (GUNS_Q >= 1) {
			mes .@npcname$;
			mes "So, you've come back?";
			next;
			if (GUNS_Q == 10005) {
				if (SkillPoint > 0) {
					mes .@npcname$;
					mes "Err, excuse me, but you still have Skill Points left. You have to use them all before I can turn you into a Gunslinger.";
					close;
				} else if (JobLevel < 10) {
					mes .@npcname$;
					mes "Err, excuse me, but your job level is not sufficient. You need to have a job level of 10 in order to change to a Gunslinger";
					close;
				}
				mes .@npcname$;
				mes "Glad to know you did what Mr. Tanieh asked you to do, makes me know you're worthy of being..";
				next;
				mes .@npcname$;
				mes "A Gunslinger!!";
				callfunc "Job_Change",Job_Gunslinger;
				callfunc "F_ClearJobVar";		//clears all job variables for the current player
				next;
				mes .@npcname$;
				mes "Oh, I forgot, here's a token of my appreciation";
				if (rand(1,3) < 3) {
					getitem 13100,1;
				} else {
					getitem 13150,1;
				}
				close;
			}
			mes .@npcname$;
			mes "But you still haven't done what I told you, need me to repeat it?";
			switch (select ("Yes, Please:No, Thanks")) {
				case 1:
					next;
					mes .@npcname$;
					mes "You need to go to Payon. At the small wooden wall and in the south exit, Mr. Tanieh will be there waiting to ask you a few things. Go now...";
					close;
				case 2:
					next;
					mes .@npcname$;
					mes "Then GET GOING! You do want to become a Gunslinger, right?";
					close;
			}
		}
		mes .@npcname$;
		mes "Hi ^0000CC"+strcharinfo(0)+"^000000,I need you to do something for me first, will you?";
		switch (select ("Yes:No")) {
			case 1:
				next;
				mes .@npcname$;
				mes "Good, I need you to go to Payon and do a few things from Mr. Tanieh.";
				next;
				mes .@npcname$;
				mes "He'll be waiting for you next to the small wooden wall of the south exit. See you later then.";
				set GUNS_Q,1;
				close;
			case 2:
				next;
				mes .@npcname$;
				mes "Too bad for you son. Come back when you are willing to do so.";
				close;
		} 

	}
	mes .@npcname$;
	mes "Hi son, how's life treating you?";
	close;
}

payon,184,65,3	script	Mr. Tanieh	866,{

	set .@npcname$, "[Mr. Tanieh]";
	if (GUNS_Q == 1) {
		mes .@npcname$;
		mes "Oh, you're ^0000CC"+strcharinfo(0)+"^000000, right? Einbroch's Armsmith told me you were going to help me with a few things.";
		next;
		mes .@npcname$;
		mes "I need to make a special soup for my wife, but, as you can see, I am not in conditions to look for the items, she's sick you know?";
		next;
		mes .@npcname$;
		mes "So, will you do it, please?";
		switch (select ("Yes, I will:Sorry I can't now")) {
			case 1:
				set GUNS_Q,callfunc("F_RandMes",4,1019,1066,1067,1068);
				goto L_LIST;

			case 2:
				next;
				mes .@npcname$;
				mes "Oh, what am I going to do now...";
				close;
		}

	} else if (GUNS_Q > 1 && GUNS_Q < 10000) {
		mes .@npcname$;
		mes "Oh, you've come back! Have you brought the items?";
		next;
		switch (select("Yes I did:No I forgot which items I had to bring")) {
			case 1:
				next;
				if (countitem(949) < 3) {
					mes .@npcname$;
					mes "Sorry, you're missing a few Feathers";
					close;
				} else if (countitem(912) < 3) {
					mes .@npcname$;
					mes "Sorry, you're missing a few Zargons";
					close;
				} else if (countitem(1013) < 3) {
					mes .@npcname$;
					mes "Sorry, you're missing a few Rainbow Shells";
					close;
				} else if (countitem(GUNS_Q) < 1) {
					mes .@npcname$;
					mes "Sorry, you don't have the exact Trunk";
					close;
				} else if (countitem(511) < 3) {
					mes .@npcname$;
					mes "Sorry, you're missing a few Green Herbs";
					close;
				} else if (countitem(935) < 10) {
					mes .@npcname$;
					mes "Sorry, you're missing a few Shells";
					close;
				}
				mes .@npcname$;
				mes "GREAT! You brought them all! Thanks very much!";
				delitem 949,3;
				delitem 912,3;
				delitem 1013,3;
				delitem GUNS_Q,1; //here we keep Trunk ID
				delitem 935,10;
				delitem 511,3;
				next;
				mes .@npcname$;
				mes "Oh my, you've been of great help. I'll recommend you to the Einbroch Armory for your job change.";
				set GUNS_Q,10003;
				close;
			case 2:
			L_LIST:
				next;
				mes .@npcname$;
				mes "Ok, I'll tell you again, so please take note!:";
				mes "^33CCFF 3 Feathers^000000";
				mes "^009933 3 Zargons^000000";
				mes "^660066 3 Rainbow Shells^000000";
				mes "^009900 3 Green Herbs^000000";
				mes "^663300 1 "+getitemname(GUNS_Q)+"^000000";
				mes "^FF6600 10 Shells^000000";
				next;
				mes .@npcname$;
				mes "Hurry please, I am not sure if my wife will last any longer... oh dear..";
				close;
		}
	} else if (GUNS_Q == 10003 || GUNS_Q == 10004) {
		if (countitem(519) >= 1 && GUNS_Q == 10004) {
			mes .@npcname$;
			mes "THAT'S IT!! I was missing the Milk! Oh yes, thanks so much, will you give it to me?";
			switch(select("Sure, take it:Sorry but I need it")) {
				case 1:
					next;
					mes .@npcname$;
					mes "Thanks so much! Go talk again with the Einbroch Armsmith. He'll change you. Thanks again and see you.";
					delitem 519,1;
					set GUNS_Q,10005;
					close;
				case 2:
					next;
					mes .@npcname$;
					mes "Oh please, I need it so much, think about it please...";
					close;
			}
		}
		mes .@npcname$;
		mes "*sigh* Now I have to wait again... Thanks for your help... but I believe there's something missing..";
		set GUNS_Q,10004;
		close;
	} else if (Class == Job_Gunslinger || GUNS_Q == 10005) {
		mes .@npcname$;
		mes "Hi ^0000CC"+strcharinfo(0)+"^000000!, how have you been doing? My wife sends you regards and thanks for the ingredients...";
		close;
	} 
	mes .@npcname$;
	mes "Hi son, how's life treating you? Nice day, isn't it?";
	close;
}