updated gunslinger job quest/ fixed louyang bug

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7976 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
Lupus 2006-07-30 09:25:00 +00:00
parent e61a6fb306
commit 8f8581568b
4 changed files with 44 additions and 79 deletions

View File

@ -38,6 +38,9 @@ Playtester
Date Added Date Added
====== ======
07/30
* Optimized Gunslinger Job Quest, rediced vars number, updated Global_Functions.txt [Lupus]
07/29 07/29
* Some more sign quest warps and a small change to the comodo gambling NPC. [MasterOfMuppets] * Some more sign quest warps and a small change to the comodo gambling NPC. [MasterOfMuppets]
* Fixed a mixed up mob id in Thanatos spawns [Playtester] * Fixed a mixed up mob id in Thanatos spawns [Playtester]

View File

@ -519,7 +519,7 @@ louyang.gat,276,136,4 script Fist Master 819,{
} }
louyang.gat,272,133,0 script Trainee::trainees 819,{ louyang.gat,272,133,0 script Trainee::trainees 819,{
set @talk,rand(11); set @talk,rand(12);
if(@talk == 1) goto L_QUOT1; if(@talk == 1) goto L_QUOT1;
if(@talk == 2) goto L_QUOT2; if(@talk == 2) goto L_QUOT2;
if(@talk == 3) goto L_QUOT3; if(@talk == 3) goto L_QUOT3;

View File

@ -7,7 +7,7 @@
//= DON'T REMOVE THIS! (by request of him, he provided all //= DON'T REMOVE THIS! (by request of him, he provided all
//= the info regarding the quests and shops.) //= the info regarding the quests and shops.)
//===== Current Version: ===================================== //===== Current Version: =====================================
//= 1.0 //= 1.6
//===== Compatible With: ===================================== //===== Compatible With: =====================================
//= eAthena SVN //= eAthena SVN
//===== Description: ========================================= //===== Description: =========================================
@ -17,6 +17,8 @@
//= 1.0 Made the NPC [erKURITA] //= 1.0 Made the NPC [erKURITA]
//= 1.5 Couple fixes to the npc, aswell as adding the missing //= 1.5 Couple fixes to the npc, aswell as adding the missing
//= 3 green herbs. [erKURITA] //= 3 green herbs. [erKURITA]
//= 1.6 job number->const, commonized variable name,
//= optimized [Lupus]
//============================================================ //============================================================
que_ng.gat,152,167,3 script Gunslinger Jobchanger 901,{ que_ng.gat,152,167,3 script Gunslinger Jobchanger 901,{
@ -25,22 +27,22 @@ set @npcname$,"[Armsmith]";
if (Class == Job_Novice) { if (Class == Job_Novice) {
if (gs_quest >= 1) { if (GUNS_Q >= 1) {
mes @npcname$; mes @npcname$;
mes "So, you've comeback?"; mes "So, you've comeback?";
next; next;
if (gs_quest == 5) { if (GUNS_Q == 5) {
if (SkillPoint > 0) { if (SkillPoint > 0) {
mes @npcname$; 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"; 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; close2;
set @npcname$,0; set @npcname$,"";
end; end;
} else if (JobLevel < 10) { } else if (JobLevel < 10) {
mes @npcname$; 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"; 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; close2;
set @npcname$,0; set @npcname$,"";
end; end;
} }
mes @npcname$; mes @npcname$;
@ -48,14 +50,14 @@ if (Class == Job_Novice) {
next; next;
mes @npcname$; mes @npcname$;
mes "A gunslinger!!!"; mes "A gunslinger!!!";
jobchange 24; jobchange Job_Gunslinger;
callfunc "F_ClearJobVar"; //clears all job variables for the current player
next; next;
mes @npcname$; mes @npcname$;
mes "Oh, I forgot, here's a token of my appreciation"; mes "Oh, I forgot, here's a token of my appreciation";
getitem 13150,1; getitem 13150,1;
close2; close2;
set gs_quest,0; set @npcname$,"";
set @npcname$,0;
end; end;
} else } else
mes @npcname$; mes @npcname$;
@ -66,14 +68,14 @@ if (Class == Job_Novice) {
mes @npcname$; 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"; 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; close2;
set @npcname$,0; set @npcname$,"";
end; end;
case 2: case 2:
next; next;
mes @npcname$; mes @npcname$;
mes "Then GET GOING! Don't you want to become a gunslinger, do you?"; mes "Then GET GOING! Don't you want to become a gunslinger, do you?";
close2; close2;
set @npcname$,0; set @npcname$,"";
end; end;
} }
} else } else
@ -89,21 +91,22 @@ if (Class == Job_Novice) {
mes @npcname$; mes @npcname$;
mes "He'll be waiting for you next to the small wooden wall of the south exit. See you later then"; mes "He'll be waiting for you next to the small wooden wall of the south exit. See you later then";
close2; close2;
set gs_quest,1; set GUNS_Q,1;
set @npcname$,0; set @npcname$,"";
end; end;
case 2: case 2:
next; next;
mes @npcname$; mes @npcname$;
mes "Too bad for you son"; mes "Too bad for you son";
close2; close2;
set @npcname$,0; set @npcname$,"";
end; end;
} }
} else } else
mes @npcname$; mes @npcname$;
mes "Hi son, how's life treating you?"; mes "Hi son, how's life treating you?";
set @npcname$,"";
close; close;
} }
@ -111,7 +114,7 @@ payon.gat,184,65,3 script Mr. Tanieh 866,{
set @npcname$,"[Mr. Tanieh]"; set @npcname$,"[Mr. Tanieh]";
if (gs_quest == 1) { if (GUNS_Q == 1) {
mes @npcname$; 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"; 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; next;
@ -122,38 +125,10 @@ if (gs_quest == 1) {
mes "So, will you do it, please?"; mes "So, will you do it, please?";
switch (select ("Yes, I will:Sorry I can't now")) { switch (select ("Yes, I will:Sorry I can't now")) {
case 1: case 1:
next; set GUNS_Q2,callfunc("F_RandMes",5,1019,1066,1067,1068,7186);
mes @npcname$; set GUNS_Q,2;
mes "Thanks very much!! Ok, here's what I need:"; goto L_LIST;
mes "^33CCFF 3 Feathers^000000";
mes "^009933 3 Zargons^000000";
mes "^660066 3 Rainbow Shells^000000";
mes "^009900 3 Green Herbs^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$,"";
set gs_quest,2;
end;
case 2: case 2:
next; next;
mes @npcname$; mes @npcname$;
@ -163,7 +138,7 @@ if (gs_quest == 1) {
end; end;
} }
} else if (gs_quest == 2) { } else if (GUNS_Q == 2) {
mes @npcname$; mes @npcname$;
mes "Oh, you've come back! Have you brought the items?"; mes "Oh, you've come back! Have you brought the items?";
next; next;
@ -188,7 +163,7 @@ if (gs_quest == 1) {
close2; close2;
set @npcname$,""; set @npcname$,"";
end; end;
} else if (countitem(trunk) < 1) { } else if (countitem(GUNS_Q2) < 1) {
mes @npcname$; mes @npcname$;
mes "Sorry, you don't have the exact Trunk"; mes "Sorry, you don't have the exact Trunk";
close2; close2;
@ -212,42 +187,27 @@ if (gs_quest == 1) {
delitem 949,3; delitem 949,3;
delitem 912,3; delitem 912,3;
delitem 1013,3; delitem 1013,3;
delitem trunk,1; delitem GUNS_Q2,1;
delitem 935,10; delitem 935,10;
delitem 511,3; delitem 511,3;
next; next;
mes @npcname$; mes @npcname$;
mes "Oh my~~ You've been of great help. I'll recommend you to the Einbroch Armory for your job change."; mes "Oh my~~ You've been of great help. I'll recommend you to the Einbroch Armory for your job change.";
close2; close2;
set gs_quest,3; set GUNS_Q,3;
set @npcname$,0; set GUNS_Q2,0;
set trunk,0; set @npcname$,"";
set randtrunk,0;
end; end;
case 2: case 2:
next; L_LIST:
next;
mes @npcname$; mes @npcname$;
mes "Ok, I'll tell you again, so please take note!:"; mes "Ok, I'll tell you again, so please take note!:";
mes "^33CCFF 3 Feathers^000000"; mes "^33CCFF 3 Feathers^000000";
mes "^009933 3 Zargons^000000"; mes "^009933 3 Zargons^000000";
mes "^660066 3 Rainbow Shells^000000"; mes "^660066 3 Rainbow Shells^000000";
mes "^009900 3 Green Herbs^000000"; mes "^009900 3 Green Herbs^000000";
if (randtrunk == 1) { mes "^663300 1 "+getitemname(GUNS_Q2)+"^000000";
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"; mes "^FF6600 10 Shells^000000";
next; next;
mes @npcname$; mes @npcname$;
@ -256,8 +216,8 @@ if (gs_quest == 1) {
set @npcname$,""; set @npcname$,"";
end; end;
} }
} else if (gs_quest == 3) || (gs_quest == 4) { } else if (GUNS_Q == 3) || (GUNS_Q == 4) {
if (countitem(519) >= 1) && (gs_quest == 4) { if (countitem(519) >= 1) && (GUNS_Q == 4) {
mes @npcname$; mes @npcname$;
mes "THAT'S IT!! I was missing the Milk! Oh yes, thanks so much, will you give it to me?"; mes "THAT'S IT!! I was missing the Milk! Oh yes, thanks so much, will you give it to me?";
switch(select("Yes, take it please:Sorry but I need it")) { switch(select("Yes, take it please:Sorry but I need it")) {
@ -267,7 +227,7 @@ if (gs_quest == 1) {
mes "Thanks so much! Go talk again with the Einbroch Armsmith. He'll change you. Thanks again and see you."; mes "Thanks so much! Go talk again with the Einbroch Armsmith. He'll change you. Thanks again and see you.";
delitem 519,1; delitem 519,1;
close2; close2;
set gs_quest,5; set GUNS_Q,5;
set @npcname$,""; set @npcname$,"";
end; end;
case 2: case 2:
@ -283,18 +243,18 @@ if (gs_quest == 1) {
mes "*sigh* All I need now is wait. Thanks for your help... but I believe there's something missing.."; mes "*sigh* All I need now is wait. Thanks for your help... but I believe there's something missing..";
close2; close2;
set @npcname$,""; set @npcname$,"";
set gs_quest,4; set GUNS_Q,4;
end; end;
} else if (Class == 24) || (gs_quest == 5) { } else if (Class == Job_Gunslinger) || (GUNS_Q == 5) {
mes @npcname$; mes @npcname$;
mes "Hi ^0000CC"+strcharinfo(0)+"^000000!, how have you been doing? My wife sends you regards and thanks for the ingredients"; mes "Hi ^0000CC"+strcharinfo(0)+"^000000!, how have you been doing? My wife sends you regards and thanks for the ingredients";
close2; close2;
set @npcname$,0; set @npcname$,"";
end; end;
} }
mes @npcname$; mes @npcname$;
mes "Hi son, how you doing? Nice day eh?"; mes "Hi son, how you doing? Nice day eh?";
close2; close2;
set @npcname$,0; set @npcname$,"";
end; end;
} }

View File

@ -3,7 +3,7 @@
//===== By: ================================================== //===== By: ==================================================
//= Lupus, kobra_k88 //= Lupus, kobra_k88
//===== Current Version: ===================================== //===== Current Version: =====================================
//= 2.02 //= 2.03
//===== Compatible With: ===================================== //===== Compatible With: =====================================
//= eAthena 1.0 //= eAthena 1.0
//===== Description: ========================================= //===== Description: =========================================
@ -24,6 +24,7 @@
//= 2.0 Fixed F_Save/LoadQuestSkills functions. Had to split in into 2 vars [Lupus] //= 2.0 Fixed F_Save/LoadQuestSkills functions. Had to split in into 2 vars [Lupus]
//= 2.01 Added $talk to F_ClearGarbage [Evera] //= 2.01 Added $talk to F_ClearGarbage [Evera]
//= 2.02 Added $dtsglobalelig and $dts|(1<<6) to F_ClearGarbage [Evera] //= 2.02 Added $dtsglobalelig and $dts|(1<<6) to F_ClearGarbage [Evera]
//= 2.03 Added Gunslinger vars to F_ClearJobVar [Lupus]
//============================================================ //============================================================
@ -62,6 +63,7 @@ function script F_ClearJobVar {
set TAEK_Q,0; set TAEK_Q,0;
set STGL_Q,0; set STGL_Q,0;
set SOUL_Q,0; set SOUL_Q,0;
set GUNS_Q,0; set GUNS_Q2,0;
return; return;
} }