Prechádzať zdrojové kódy

GS related npcs

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5950 54d463be-8e91-2dee-dedb-b68131a5f0ec
Vicious 19 rokov pred
rodič
commit
5e837a9caa

+ 29 - 1
npc/cities/einbroch.txt

@@ -14,6 +14,8 @@
 //= 0.4 Added a crappy quest, have fun guys... [MasterOfMuppets]
 //= 0.4a Added exp bonus for the factory quest, borrowed from a Korean fansite.
 //= 0.4b Added missing close [Komurka]
+//= 0.5 Added Temporal Locations of Gunslinger Job Change map.
+//=	Info provided by RockmanEXE [erKURITA]
 //============================================================
 
 
@@ -1510,4 +1512,30 @@ einbroch.gat,188,72,3	script	Keneshiotz	855,{
 	mes "know that money makes";
 	mes "the world go 'round?";
 	close;
-}
+}
+
+//| Temporal NPC locations until the text inside it has been obtained
+
+//que_ng.gat,182,85,2	script	TempNPC0	109,{
+//end;
+//}
+
+//que_ng.gat,187,149,3	script	TempNPC1	83,{
+//end;
+//}
+
+//que_ng.gat,187,154,3	script	TempNPC2	86,{
+//end;
+//}
+
+//que_ng.gat,187,161,3	script	TempNPC3	744,{
+//end;
+//}
+
+//que_ng.gat,185,180,3	script	TempNPC4	726,{
+//end;
+//}
+
+//que_ng.gat,149,178,5	script	TempNPC5	744,{
+//end;
+//}

+ 238 - 39
npc/jobs/1-1e/gunslinger.txt

@@ -1,53 +1,252 @@
 //===== eAthena Script ======================================= 
 //= Gunslinger Job Quest
 //===== By: ================================================== 
-//= Lord Gywall
+//= 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.0
 //===== Compatible With: ===================================== 
 //= eAthena SVN
 //===== Description: ========================================= 
-//= Temp Gunslinger Quest
+//= "Semi" Official Gunslinger Quest ~ The text isn't the same
+//= but it does the things it has to do :P
 //===== Additional Comments: ================================= 
-//= 1.0 Fixed minor things [Lupus]
+//= 1.0 Made the NPC [erKURITA]
 //============================================================ 
 
+que_ng.gat,152,167,3	script	Gunslinger Jobchanger	901,{
 
-einbroch.gat,244,110,1	script	Gunslinger	859,{
-	mes "[Gunslinger]";
-	mes "*cough* Uh, Who's there?";
-	if(Class==Job_Novice) goto N_Novice;
-	mes "Hey! You're no novice!";
-	close;
-N_Novice:
-	mes "Oh, A novice.. I guess you want to shoot things.";
-	next;
-	menu "I wish to become a Gunslinger",N_Question,"What are the requirements",N_Require,"Leave",-;
-	close;
-N_Question:
-	mes "[Gunslinger]";
-	if(JobLevel<10 || SkillPoint) goto N_Bad;
-	mes "Where is needed to fire a gun?";
+set @npcname$,"[Armsmith]";
+
+if (Class == Job_Novice) {
+
+	if (gs_quest >= 1) {
+		mes @npcname$;
+		mes "So, you've comeback?";
+		next;
+		if (gs_quest == 3) {
+			if (SkillPoint > 0) {
+				mes @npcname$;
+				mes "Err, excuse me, but you still have Skill Points left. You have to use them all first before I can turn you into a Gunslinger";
+				close2;
+				set @npcname$,0;
+				end;
+			} else if (JobLevel < 10) {
+				mes @npcname$;
+				mes "Err, excuse me, but you don't have Level 10 Job. You need to have 10 level job in order to change to Gunslinger";
+				close2;
+				set @npcname$,0;
+				end;
+			}
+			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!!!";
+			jobchange 24;
+			next;
+			mes @npcname$;
+			mes "Oh, I forgot, here's a token of my appreciation";
+			getitem 13150,1;
+			close2;
+			set gs_quest,0;
+			set @npcname$,0;
+			end;
+		} else
+		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:
+				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 then";
+				close2;
+				set @npcname$,0;
+				end;
+			case 2:
+				mes @npcname$;
+				mes "Then GET GOING! Don't you want to become a gunslinger, do you?";
+				close2;
+				set @npcname$,0;
+				end;
+			}
+	} else
+
+	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:
+			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";
+			close2;
+			set gs_quest,1;
+			set @npcname$,0;
+			end;
+		case 2:
+			mes @npcname$;
+			mes "Too bad for you son";
+			close2;
+			set @npcname$,0;
+			end;
+		} 
+
+	} else 
+		mes @npcname$;
+		mes "Hi son, how's life threathing you?";
+		close;
+}
+
+payon.gat,184,65,3	script	Mr. Tanieh	866,{
+
+set @npcname$,"[Mr. Tanieh]";
+
+if (gs_quest == 1) {
+	mes @npcname$;
+	mes "Oh, you're ^0000CC"+strcharinfo(0)+"^000000, right? Einbroch's Armsmith told me you were going to help me in a few things";
 	next;
-	menu "Bullets",N_C,"Arrows",N_W,"Bolts",N_W,"Something.. I dunno",N_W;
-N_C:
-	mes "[Gunslinger]";
-	mes "..Yep, Your right.";
-	mes "You know what goes in guns, so hey.. Use them!.";
+	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;
-	jobchange Job_Gunslinger;
-	mes "[Gunslinger]";
-	mes "Congratulations. Now go train.";
-	close;
-N_W:
-	mes "Argh.. Dammit, you idiot!";
-	close;
-N_Bad:
-	mes "Wait a second.. Your either too low in job level or you have Skill Points.";
-	close;
-N_Require:
-	mes "[Gunslinger]";
-	mes "Get the simple question right..";
-	mes "Your job level must be at least 10 before trying.";
-	close;
-}
+	mes @npcname$;
+	mes "So, will you do it, please?";
+	switch (select ("Yes, I will:Sorry I can't now")) {
+		case 1:
+			mes @npcname$;
+			mes "Thanks very much!! Ok, here's what I need:";
+			mes "^33CCFF 3 Feathers^000000";
+			mes "^009933 3 Zargons^000000";
+			mes "^660066 3 Rainbow Shells^000000";
+			set @randtrunk,rand(1,5);
+			if (@randtrunk == 1) {
+				mes "^663300 1 Trunk^000000";
+				set trunk,1019;
+			} else if (@randtrunk == 2) {
+				mes "^663300 1 Fine-Grained Trunk^000000";
+				set trunk,1066;
+			} else if (@randtrunk == 3) {
+				mes "^663300 1 Solid Trunk^000000";
+				set trunk,1067;
+			} else if (@randtrunk == 4) {
+				mes "^663300 1 Barren Trunk^000000";
+				set trunk,1068;
+			} else if (@randtrunk == 5) {
+				mes "^663300 1 Thin Trunk";
+				set trunk,7186;
+			} 
+			mes "^FF6600 10 Shells^000000";
+			next;
+			mes @npcname$;
+			mes "Hurry please, I am not sure if my wife will last any longer... oh dear";
+			close2;
+			set @npcname$,0;
+			set gs_quest,2;
+			end;
+		case 2:
+			mes @npcname$;
+			mes "Oh, what am I going to do now...";
+			close2;
+			set @npcname$,0;
+			end;
+		}
+
+	} else if (gs_quest == 2) {
+		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:
+				if (countitem(949) < 3) {
+				mes @npcname$;
+				mes "Sorry, you're missing a few Feathers";
+				close2;
+				set @npcname$,0;
+				end;
+			} else if (countitem(912) < 3) {
+				mes @npcname$;
+				mes "Sorry, you're missing a few Zargons";
+				close2;
+				set @npcname$,0;
+				end;
+			} else if (countitem(1013) < 3) {
+				mes @npcname$;
+				mes "Sorry, you're missing a few Rainbow Shells";
+				close2;
+				set @npcname$,0;
+				end;
+			} else if (countitem(trunk) < 1) {
+				mes @npcname$;
+				mes "Sorry, you don't have the exact Trunk";
+				close2;
+				set @npcname$,0;
+				end;
+			} else if (countitem(935) < 10) {
+				mes @npcname$;
+				mes "Sorry, you're missing a few Shells";
+				close2;
+				set @npcname$,0;
+				end;
+			} else
+				mes @npcname$;
+				mes "GREAT! You brought them all! Thanks very much!";
+				delitem 949,3;
+				delitem 912,3;
+				delitem 1013,3;
+				delitem trunk,1;
+				delitem 935,10;
+				next;
+				mes @npcname$;
+				mes "Oh my~~ You've been of great help. I'll recommend you to the Einbroch Armory for your job change. Go talk again with the Einbroch Armsmith. He'll change you. Thanks again and see you.";
+				close2;
+				set gs_quest,3;
+				set @npcname$,0;
+				set trunk,0;
+				end;
+			case 2:
+				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";
+				set @randtrunk,rand(1,5);
+			if (@randtrunk == 1) {
+				mes "^663300 1 Trunk^000000";
+				set trunk,1019;
+			} else if (@randtrunk == 2) {
+				mes "^663300 1 Fine-Grained Trunk^000000";
+				set trunk,1066;
+			} else if (@randtrunk == 3) {
+				mes "^663300 1 Solid Trunk^000000";
+				set trunk,1067;
+			} else if (@randtrunk == 4) {
+				mes "^663300 1 Barren Trunk^000000";
+				set trunk,1068;
+			} else if (@randtrunk == 5) {
+				mes "^663300 1 Thin Trunk";
+				set trunk,7186;
+			} 
+				mes "^FF6600 10 Shells^000000";
+				next;
+				mes @npcname$;
+				mes "Hurry please, I am not sure if my wife will last any longer... oh dear";
+				close2;
+				set @npcname$,0;
+				end;
+			}
+	} else if (Class == 24) || (gs_quest == 3) {
+	mes @npcname$;
+	mes "Hi ^0000CC"+strcharinfo(0)+"^000000!, how have you been doing? My wife sends you regards and thanks for the ingredients";
+	close2;
+	set @npcname$,0;
+	end;
+	}
+mes @npcname$;
+mes "Hi son, how you doing? Nice day eh?";
+close2;
+set @npcname$,0;
+end;
+}

+ 9 - 1
npc/merchants/shops.txt

@@ -17,6 +17,8 @@
 //= 1.21 Added another weapon dealer to Einbroch, thanks to Muad_Dib [MasterOfMuppets]
 //=    - Fixed up the missing sprites for you Lupus :)
 //= 1.22 Thx8) Removed Berserk Potions from all shops but Comodo [Lupus]
+//= 1.3 Added Gunslinger shops. Credits goes to RockmanEXE for the info [erKURITA]
+//=	Added Bucket Hat to Flu Mask dealer and modified it's name to a more logical one :P [erKURITA]
 //============================================================ 
 
 
@@ -90,7 +92,7 @@ ein_in01.gat,189,15,0	shop	Tool Dealer	850,1750:-1,1752:-1,1751:-1,611:-1,501:-1
 ein_in01.gat,106,27,4	shop	One-Hand Weapon Dealer	850,1101:-1,1104:-1,1107:-1,1110:-1,1113:-1,1119:-1,1122:-1,1123:-1,1126:-1,1129:-1,1201:-1,1204:-1,1207:-1,1210:-1,1213:-1,1216:-1,1219:-1,1222:-1,1301:-1,1401:-1,1404:-1,1407:-1,1501:-1,1504:-1,1507:-1,1510:-1,1513:-1,1516:-1,1519:-1,1522:-1,1801:-1,1803:-1,1805:-1,1807:-1,1809:-1,1811:-1,1771:-1
 ein_in01.gat,109,27,4	shop	Two-Hand Weapon Dealer	850,1116:-1,1151:-1,1154:-1,1157:-1,1160:-1,1351:-1,1354:-1,1357:-1,1360:-1,1410:-1,1451:-1,1454:-1,1457:-1,1460:-1,1463:-1,1250:-1,1252:-1,1254:-1
 ein_in01.gat,119,26,4	shop	Weapon Dealer	855,1247:-1,1248:-1,1249:-1,13000:-1
-einbroch.gat,138,66,3	shop	Flu Mask Dealer	850,2218:-1
+einbroch.gat,138,66,3	shop	Head Gear Dealer	850,5114,:-1,2218:-1
 einbroch.gat,82,199,3	shop	Paddler	855,512:-1,645:-1,1750:-1,501:-1
 einbroch.gat,235,106,3	shop	Ammo Dealer	847,13200:-1,13201:-1,13202:-1,13203:-1,13204:-1,13205:-1,13206:-1,13207:-1
 einbroch.gat,232,106,3	shop	Gun Dealer	847,13150:-1,13100:-1,13101:-1,13102:-1,13103:-1,13104:-1,13105:-1,13106:-1,13151:-1,13152:-1,13153:-1,13154:-1,13155:-1,13156:-1,13157:-1,13158:-1,13159:-1,13160:-1,13161:-1,13162:-1
@@ -301,6 +303,12 @@ morocc.gat,121,97,5	shop	Food Seller	750,7455:-1,7453:-1,7452:-1,7456:-1,7454:-1
 aldebaran.gat,166,109,7	shop	Food Seller	750,580:-1,7482:-1	//temp goods
 geffen.gat,135,64,3	shop	Food Seller	750,580:-1,7482:-1	//temp coords, temp goods
 
+//=======================================================
+// GUNSLINGER SHOPS
+//=======================================================
+que_ng.gat,179,91,4	shop	Gunner#Gunner1	900,13150:-1,13102:-1,13151:-1,13154:-1,13155:-1
+que_ng.gat,180,79,4	shop	Gunner#Gunner2	900,13200:-1,13201:-1,13202:-1
+
 //===== Additional Comments(old): ================================= 
 //= swapped shop titles in GONRYUN, thanks to Kashy
 //= 1.3a Fixed Louyang map name. Added additional shops in Yuno. [kobra_k88]

+ 13 - 1
npc/warps/cities/einbroch.txt

@@ -13,6 +13,7 @@
 //= 1.5 Commented out some warps which are not in the official servers [MasterOfMuppets]
 //= 1.6	Removed some duplicate warps [MasterOfMuppets]
 //= 1.7 Updated Warps, work done by SSUNNY@YOUNG in Korean eA site [Vicious]
+//= 1.8 Added Gunslinger Map portion warps. Credits to RockmanEXE for the info [erKURITA]
 //============================================================
 
 //==========================================================================
@@ -100,4 +101,15 @@ ein_in01.gat,39,85,0	warp	ein_jb02a	1,1,ein_in01.gat,36,36
 einbroch.gat,157,331,0	warp	ein_fd01	1,1,ein_fild04.gat,184,31
 ein_fild04.gat,184,26,0	warp	ein_fd01a	1,1,einbroch.gat,157,327
 einbroch.gat,150,25,0	warp	ein_fd02	1,1,ein_fild08.gat,164,377
-ein_fild08.gat,164,380,0	warp	ein_fd02a	1,1,einbroch.gat,150,28
+ein_fild08.gat,164,380,0	warp	ein_fd02a	1,1,einbroch.gat,150,28
+
+//==========================================================================
+//Einbroch - Gunslinger Map Portion (Ninja's map is the same: que_ng.gat)
+//==========================================================================
+einbroch.gat,137,149,0	warp	gswarp1	1,1,que_ng.gat,138,167
+que_ng.gat,130,166,0	warp	gswarp2	1,1,einbroch.gat,130,197
+que_ng.gat,178,162,0	warp	gswarp3	1,1,que_ng.gat,176,86
+que_ng.gat,170,85,0	warp	gswarp4	1,1,que_ng.gat,182,161
+que_ng.gat,165,137,0	warp	gswarp5	1,1,que_ng.gat,177,41
+que_ng.gat,172,42,0	warp	gswarp6	1,1,que_ng.gat,160,139
+einbroch.gat,136,199,0	warp	gswarp7	1,1,que_ng.gat,138,167