* Updated Rune Knight and Ranger job quests to their latest versions. This completes the recent third job updates (r17024, r17010, r16991, r16990).

* Fixed quest_db name typos (bugreport:7011).
* Added Wolf Flute Trader script to re\merchants\falcon_flute.txt, and renamed to re\merchants\flute.txt.
* Optimized Falcon Flute Trader script.
* Added constants in El Dicastes quests.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17028 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
euphyy 2012-12-17 22:05:04 +00:00
parent d8b9d425c5
commit 9f1a84dfd3
10 changed files with 1809 additions and 4358 deletions

View File

@ -212,7 +212,7 @@
2219,0,0,0,0,0,0,0,"Wanderer Job Change Quest"
2220,0,0,0,0,0,0,0,"Wanderer Job Change Quest"
2221,600,1718,50,0,0,0,0,"Wanderer Job Change Quest"
2222,0,0,0,0,0,0,0,"Wanderer Job Change Quest
2222,0,0,0,0,0,0,0,"Wanderer Job Change Quest"
2223,0,1428,100,0,0,0,0,"Generic Job Change Quest"
3000,0,0,0,0,0,0,0,"Job Change to Bard"
@ -336,7 +336,7 @@
3136,14400,0,0,0,0,0,0,"Nidhoggur's Nest Time Limit"
3200,0,0,0,0,0,0,0,"Job changes to Rune knight - Recommendation for Rune knight"
3201,0,0,0,0,0,0,0,"Job changes to Rune knight - Secret rendezvous of Rune knigh"
3201,0,0,0,0,0,0,0,"Job changes to Rune knight - Secret rendezvous of Rune knight"
3202,0,0,0,0,0,0,0,"Job changes to Rune knight - The first test"
3203,0,0,0,0,0,0,0,"Job changes to Rune knight - The first test"
3204,0,0,0,0,0,0,0,"Job changes to Rune knight - Pass the first test"
@ -354,7 +354,7 @@
3216,0,0,0,0,0,0,0,"Job changes to Rune knight - The final test"
3217,0,0,0,0,0,0,0,"Job changes to Rune knight - The final test"
3218,0,0,0,0,0,0,0,"Job changes to Rune knight - Pass the final test"
3219,0,0,0,0,0,0,0,"Job changes to Rune knight - The end of all tes"
3219,0,0,0,0,0,0,0,"Job changes to Rune knight - The end of all test"
3220,600,0,0,0,0,0,0,"Job changes to Rune knight - Waiting time of test"
3250,0,1041,30,0,0,0,0,"Request - What is this bandage for?"

View File

@ -5,7 +5,7 @@
//= Darlskies, Darkchild, Syrus22, Lupus, kobra_k88 (2.0)
//= L0ne_W0lf
//===== Current Version: =====================================
//= 6.6
//= 6.7
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@ -61,6 +61,7 @@
//= 6.4 Removed unofficial Guide function. [Daegaladh]
//= 6.5 Optimized. [Joseph]
//= 6.6 Added Warp Points / View Points Function. [Joseph]
//= 6.7 Added Rune Knight Kafra. [Euphy]
//============================================================
//=== Main Function ========================================================
@ -135,11 +136,13 @@ function script F_Kafra {
// No save, or teleport. (Common)
case 5: setarray @K_Menu0$[0],"Use Storage","Rent a Pushcart","Check Other Information","Cancel"; break;
// Storage and Check Other Information only.
case 6: setarray @K_Menu0$[0],"Use Storage","Check Other Information","Cancel"; break;
case 6: setarray @K_Menu0$[0],"Use Storage","Check Other Information","Cancel"; break;
// Save, Storage, and Pushcart only (Kafra Warehouse)
case 7: setarray @K_Menu0$[0],"Save","Use Storage","Rent a Pushcart","Cancel"; break;
// Save, Storage, Other Check information. (Turbo track)
case 8: setarray @K_Menu0$[0],"Save","Use Storage","Check Other Information","Cancel"; break;
// No Save (Rune Knight)
case 9: setarray @K_Menu0$[0],"Use Storage","Rent a Pushcart","Use Teleport Service","Check Other Information","Cancel"; break;
// Default message (obsolete)
default: setarray @K_Menu0$[0],"Save","Use Storage","Use Teleport Service","Rent a Pushcart","Check Other Information","Cancel"; break;
}
@ -327,7 +330,7 @@ function script F_KafTele {
//===================================================
function script F_KafCart {
// Ensure that the class wanting to rent a pushcart is a merchant
if(baseClass != Job_Merchant){
if(BaseClass != Job_Merchant){
mes "[Kafra Employee]";
mes "I'm sorry, but the";
mes "Pushcart rental service";
@ -378,7 +381,8 @@ function script F_KafInfo {
// Uncomment next line to block Kafra Storage Protection
// set .@block, 1;
setarray .@m$, "Check Special Reserve Points.","Storage Password Service","Kafra Employee Locations","Cancel";
if (.@block) deletearray .@m$[1],1;
if (getarg(0) == 2) deletearray .@m$[1],2; // Rune Knight
else if (.@block) deletearray .@m$[1],1;
while (1) {
set .@j, select(implode(.@m$,":")) - 1;
if (.@m$[.@j] == "Check Special Reserve Points.") {
@ -622,9 +626,12 @@ function script F_KafSet {
setarray @wrpP[0], 1200;
setarray @viewpX[0], 328, 278, 153, 0;
setarray @viewpY[0], 108, 221, 187, 0;
} else if (strnpcinfo(4) == "job3_rune01") {
setarray @wrpD$[0], "Izlude", "Geffen", "Payon", "Morroc", "Alberta";
setarray @wrpP[0], 600, 1200, 1200, 1200, 1800;
}
for (set .@i, 0; .@i < getarraysize(@wrpD$); set .@i, .@i + 1)
setd "@wrpC$["+.@i+"]",getd("@wrpD$["+.@i+"]")+" -> "+getd("@wrpP["+.@i+"]");
setd "@wrpC$["+getarraysize(@wrpC$)+"]","Cancel";
return;
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -953,7 +953,8 @@ job3_gen01,91,48,3 script Demi Calberine#gen 982,{
mes "- There are so many scattered things on the floor that the lab is in chaos. -";
next;
mes "- You found a little metal fragment. -";
set job_gen,job_gen+1;
set job_gen, job_gen+1;
specialeffect EF_BASH;
disablenpc strnpcinfo(0);
initnpctimer;
close;

View File

@ -264,11 +264,11 @@ L_Code:
next;
mes "[Urupa]";
mes "The numbers have to be paired.";
mes "3511543433!";
mes "35 11 54 34 33 break down into 5 pairs!";
mes "3511543433";
mes "35 11 54 34 33 breaks down into 5 pairs!";
next;
mes "[Urupa]";
mes "So the pairs mean.";
mes "So the pairs mean:";
mes "35 - P, 11 - A,";
mes "54 - Y, 34 - O, 33 - N.";
next;
@ -555,7 +555,7 @@ L_Code:
next;
mes "[Graham]";
mes "Let's see. For example.";
mes "13 15 18 15 3 3 18 21 9 14 = ";
mes "13 15 18 15 3 3 18 21 9 14 =";
mes "M O R O C C R U I N";
next;
mes "[Graham]";
@ -935,7 +935,7 @@ s_atelier,167,129,3 script Manager#sc06_yuno 806,{
} else if (job_sha == 19) {
mes "[Haled]";
mes "What?";
mes "You want to walk with me?";
mes "You want to talk with me?";
mes "How about you just hand over that key to me?";
next;
callsub L_Code;
@ -2153,9 +2153,9 @@ job3_sha01,73,80,0 script ????#keybox03 844,{
next;
break;
case 3:
mes "You shake it slowly";
mes "you can hear a noise";
mes "But nothing's coming out.";
mes "You shake it slowly.";
mes "You can hear a noise,";
mes "but nothing's coming out.";
next;
mes "["+strcharinfo(0)+"]";
mes "That's not it.";
@ -2174,7 +2174,7 @@ job3_sha01,73,80,0 script ????#keybox03 844,{
mes "["+strcharinfo(0)+"]";
mes "What? A key again!";
mes "Haled will be disappointed.";
mes "I better to go back.";
mes "I better go back.";
set job_sha,25;
setquest 7176;
getitem 6268,1; //Mirth_Key

View File

@ -1,123 +0,0 @@
//===== rAthena Script =======================================
//= Falcon Flute Trader
//===== By: ==================================================
//= Masao
//= Credits to Muad_Dib for the translation & Ziu for the
//= Item ID of the Falcon Flute.
//===== Current Version: =====================================
//= 1.0
//===== Compatible With: =====================================
//= rAthena
//===== Description: =========================================
//= An NPC which sells you a Falcon Flute so you're able to
//= summon a Falcon wherever you are.
//===== Additional Comments: =================================
//= 1.0 First Version. [Masao]
//= 1.1 Added Baby Hunter and Baby Ranger check. bugreport:5728 [Masao]
//============================================================
- script Falcon Flute Trader::fflute -1,{
if (Class == Job_Baby_Hunter || Class == Job_Hunter || Class == Job_Sniper || Class == Job_Baby_Ranger || Class == Job_Ranger || Class == Job_Ranger_T) {
mes "[Falcon Flute Trader]";
mes "Do you need a Falcon?";
mes "With a magical Flute, you can call your Falcon from anywhere!";
next;
mes "[Falcon Flute Trader]";
mes "It's marvelous, isn't it? Ha ha ha!";
next;
mes "[Falcon Flute Trader]";
mes "Why I'm selling these Falcon Flutes?";
mes "It's because I have no clue how they work.";
mes "Ha ha ha!";
next;
mes "[Falcon Flute Trader]";
mes "Of course, you'll need the Skill ^ff0000Falcon Mastery^000000.";
mes "I don't have the Skill, so I don't know how to handle Falcons.";
mes "As it's for now, I may never have a Falcon.";
next;
mes "[Falcon Flute Trader]";
mes "But I can't give you one for free!";
mes "I have to make money since i also need to eat!";
next;
mes "[Falcon Flute Trader]";
mes "If you need a Falcon Flute I will sell them for 12,500 zeny. Or is that too expensive?";
next;
if (Class == Job_Baby_Hunter || Class == Job_Hunter || Class == Job_Sniper) {
switch (select("Don't buy one:Buy a Falcon Flute")) {
case 1:
mes "[Falcon Flute Trader]";
mes "That's too bad. If you need one, come back!";
close;
case 2:
if (Zeny >= 12500) {
if (countitem(12848) >= 1) {
mes "[Falcon Flute Trader]";
mes "As i can see you already have an Falcon Flute!";
mes "Don't worry my young friend, once you've purchased the Falcon Flute you won't need to do so again";
mes "since the Falcon Flute won't disappear upon usage, isn't that great?";
close;
}
mes "[Falcon Flute Trader]";
mes "Here, take this Flute.";
mes "With it you can whistle for your Falcon from anywhere.";
set Zeny, Zeny - 12500;
getitem 12848,1; // Falcon Flute
next;
mes "[Falcon Flute Trader]";
mes "Just a reminder.";
mes "You need the Skill ^ff0000Falcon Mastery^000000 in order to use it!";
close;
}
mes "[Falcon Flute Trader]";
mes "I'm sorry but you don't have enough money to buy a Falcon Flute, please come back when you have more money!";
close;
}
}
mes "[Falcon Flute Trader]";
mes "For Rangers however, I have a special Price of 10,000 zeny!";
next;
switch (select("Don't buy one:Buy a Falcon flute")) {
case 1:
mes "[Falcon Flute Trader]";
mes "That's too bad. If you need one, come back!";
close;
case 2:
if (Zeny >= 10000) {
if (countitem(12848) >= 1) {
mes "[Falcon Flute Trader]";
mes "As i can see you already have an Falcon Flute!";
mes "Don't worry my young friend, once you've purchased the Falcon Flute you won't need to do so again";
mes "since the Falcon Flute won't disappear upon usage, isn't that great?";
close;
}
mes "[Falcon Flute Trader]";
mes "Here take this Flute.";
mes "With it you can whistle for your Falcon from anywhere.";
set Zeny, Zeny - 10000;
getitem 12848,1; // Falcon Flute
next;
mes "[Falcon Flute Trader]";
mes "Just a reminder.";
mes "You need the Skill ^ff0000Falcon Mastery^000000 in order to use it!";
close;
}
mes "[Falcon Flute Trader]";
mes "I'm sorry but you don't have enough money to buy a Falcon Flute, please come back when you have more money!";
close;
}
}
if (Class == Job_Baby_Archer || Class == Job_Archer) {
mes "[Falcon Flute Trader]";
mes "Hello young one!";
mes "Currently i can't help you,";
mes "but why don't you return to me when you've become an great Hunter and learned how to handle Falcons properly?";
close;
}
mes "[Falcon Flute Trader]";
mes "Isn't it a beautiful Day today?";
close;
}
hu_in01,386,306,3 duplicate(fflute) Falcon Flute Trader#fft 51
pay_arche,91,134,3 duplicate(fflute) Falcon Flute Trader#fft2 51

141
npc/re/merchants/flute.txt Normal file
View File

@ -0,0 +1,141 @@
//===== rAthena Script =======================================
//= Falcon & Wolf Flute Trader
//===== By: ==================================================
//= Masao, Muad_Dib, Ziu
//===== Current Version: =====================================
//= 1.2
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
//= Sells Falcon Flute and Wolf Flute.
//===== Additional Comments: =================================
//= 1.0 First Version. [Masao]
//= 1.1 Added Baby Hunter and Baby Ranger check. bugreport:5728 [Masao]
//= 1.2 Added Wolf Flute trader, optimized. [Euphy]
//============================================================
- script Falcon Flute Trader::fflute -1,{
mes "[Falcon Flute Trader]";
if (BaseJob == Job_Hunter || Class == Job_Ranger || Class == Job_Ranger_T || Class == Job_Baby_Ranger) {
mes "Do you need a Falcon?";
mes "With a magical Flute, you can call your Falcon from anywhere!";
next;
mes "[Falcon Flute Trader]";
mes "It's marvelous, isn't it? Ha ha ha!";
next;
mes "[Falcon Flute Trader]";
mes "Why I'm selling these Falcon Flutes?";
mes "It's because I have no clue how they work.";
mes "Ha ha ha!";
next;
mes "[Falcon Flute Trader]";
mes "Of course, you'll need the Skill ^ff0000Falcon Mastery^000000.";
mes "I don't have the Skill, so I don't know how to handle Falcons.";
mes "As it's for now, I may never have a Falcon.";
next;
mes "[Falcon Flute Trader]";
mes "But I can't give you one for free!";
mes "I have to make money since i also need to eat!";
next;
mes "[Falcon Flute Trader]";
mes "If you need a Falcon Flute I will sell them for 12,500 zeny. Or is that too expensive?";
next;
if (BaseJob == Job_Hunter)
set .@price,12500;
else {
mes "[Falcon Flute Trader]";
mes "For Rangers, however, I have a special price of 10,000 zeny!";
set .@price,10000;
next;
}
if(select("Don't buy one:Buy a Falcon Flute") == 1) {
mes "[Falcon Flute Trader]";
mes "That's too bad. If you need one, come back!";
close;
}
if (Zeny >= .@price) {
if (countitem(12848) >= 1) {
mes "[Falcon Flute Trader]";
mes "As I can see you already have a Falcon Flute!";
mes "Don't worry, my young friend, once you've purchased the Falcon Flute you won't need to do so again";
mes "since the Falcon Flute won't disappear upon usage, isn't that great?";
close;
}
mes "[Falcon Flute Trader]";
mes "Here, take this flute.";
mes "With it you can whistle for your Falcon from anywhere.";
set Zeny, Zeny - .@price;
getitem 12848,1; // Falcon Flute
next;
mes "[Falcon Flute Trader]";
mes "Just a reminder.";
mes "You need the Skill ^ff0000Falcon Mastery^000000 in order to use it!";
close;
}
mes "[Falcon Flute Trader]";
mes "I'm sorry but you don't have enough money to buy a Falcon Flute, please come back when you have more money!";
close;
}
if (Class == Job_Baby_Archer || Class == Job_Archer) {
mes "Hello, young one!";
mes "Currently I can't help you,";
mes "but why don't you return to me when you've become a great Hunter and learned how to handle Falcons properly?";
close;
}
mes "Isn't it a beautiful day today?";
close;
}
hu_in01,386,306,3 duplicate(fflute) Falcon Flute Trader#fft 51
pay_arche,91,134,3 duplicate(fflute) Falcon Flute Trader#fft2 51
tur_dun01,89,170,5 script Expert Flute Crafter 59,{
if (Class == Job_Ranger || Class == Job_Ranger_T || Class == Job_Baby_Ranger) {
if (countitem(6124)) {
mes "[Expert Flute Crafter]";
mes "The Wolf Flute you have is crafted by myself, with wood.";
mes "You can come back here and find me if you lose your Wolf flute!";
next;
mes "[Expert Flute Crafter]";
mes "The flute can only be crafted by me.";
mes "It is just a little matter for me to craft another flute!!";
close;
}
mes "[Expert Flute Crafter]";
mes "Do you need anything?";
mes "A new Wolf Flute?";
next;
switch(select("Please give me a new Wolf Flute.:No.")) {
case 1:
if (countitem(7150) && Zeny >= 100000) {
mes "[Expert Flute Crafter]";
mes "Have you brought all the materials?";
mes "Wow! All your materials are not bad!";
mes "That's good enough.";
next;
mes "[Expert Flute Crafter]";
mes "Here's the new Wolf Flute.";
mes "Hope you are ready to use it.";
delitem 7150,1; //Bamboo_Cut
set Zeny, Zeny-100000;
getitem 6124,1; //Wolf's_Flute
close;
}
mes "[Expert Flute Crafter]";
mes "If you want to craft a new Wolf Flute, I need you to bring me ^4d4dff1 Bamboo Cut and 100,000 zeny.^000000";
next;
mes "[Expert Flute Crafter]";
mes "^4d4dffBamboo Cut can be obtained from Kapha or Karakasa.^000000";
close;
case 2:
mes "[Expert Flute Crafter]";
mes "If you do not summon a wolf, then you don't need the Wolf Flute.";
mes "You can come back here and find me if you change your mind.";
mes "Isn't that right?";
close;
}
}
mes "[Expert Flute Crafter]";
mes "Eeehh? You are not a Ranger?";
mes "Then this flute is totally useless for you!";
close;
}

View File

@ -444,7 +444,7 @@ function script que_dic {
}
getexp getarg(2),0;
erasequest getarg(1);
specialeffect2 18;
specialeffect2 EF_STEAL;
getitem 6304,1;
close;
}
@ -1003,7 +1003,7 @@ dic_in01,40,193,1 script Papyrus#0001 453,{
mes "Ugh... feel dizzy from simply staring at the document. Will come back after cooling down";
close;
}
specialeffect2 235;
specialeffect2 EF_DISPELL;
progressbar "ffff00",4;
set .@doc,rand(1,70);
if (.@doc > 50 && .@doc <= 60) {
@ -1075,7 +1075,7 @@ dic_in01,40,193,1 script Papyrus#0001 453,{
mes "^660066"+getarg(3)+"^000000";
next;
mes "You've found a document about ^990099"+getarg(1)+"^000000. Check for details in the ^800080Quest Window^000000.";
specialeffect2 18;
specialeffect2 EF_STEAL;
setquest getarg(0);
close;
}
@ -1093,17 +1093,17 @@ function script unknown_d {
mes "You see some traces of digging";
close;
}
specialeffect2 310;
specialeffect2 830;
specialeffect2 EF_SPRINKLESAND;
specialeffect2 EF_BEGINSPELL_N1;
progressbar "ffff00",4;
erasequest getarg(0);
mes "You were able to find information on the "+getitemname(getarg(1))+".";
specialeffect2 18;
specialeffect2 EF_STEAL;
getitem getarg(1),rand(1,4);
if (!rand(2)) {
next;
mes "In addition, you've obtained an unknown relic to report back to the Saphas.";
specialeffect2 18;
specialeffect2 EF_STEAL;
getitem 6308,1; //Unidentified_Relic
}
close;
@ -3844,8 +3844,8 @@ dic_in01,245,119,4 script Shay#ep133_13 884,{
next;
mes "[Shay]";
mes "Stop!!!!!!!!!!!!!";
specialeffect2 0;
specialeffect2 1;
specialeffect2 EF_HIT1;
specialeffect2 EF_HIT2;
percentheal -30,0;
next;
mes "-Shay got all upset and threw something sticky and smelly.";
@ -7084,7 +7084,7 @@ dic_in01,42,264,3 script Adventurer Clerk#ep133 453,{
mes "Then, take the equipment off first.";
close;
}
specialeffect2 128;
specialeffect2 EF_OVERTHRUST;
mes .@n$;
if (.@re$ == "Brare") mes "I've collected all equipment and erased all records as you requested. Now all your equipment and records are clean.";
else mes "I only do what I'm asked to do. I've retrieved all equipment and cancelled all records.";
@ -7163,7 +7163,7 @@ dic_in01,42,264,3 script Adventurer Clerk#ep133 453,{
mes "Please come back again";
close;
}
specialeffect2 128;
specialeffect2 EF_OVERTHRUST;
mes .@n$;
mes "I have erased all previous records";
mes "of upgrades to start all over with";
@ -7195,7 +7195,7 @@ dic_in01,42,264,3 script Adventurer Clerk#ep133 453,{
mes .@n$;
mes "Then let's start.";
next;
specialeffect2 101;
specialeffect2 EF_REPAIRWEAPON;
progressbar "ffff00",3;
delitem 6304,.@req;
if (getd("ep13_3_"+.@v$) == 0) {

View File

@ -45,7 +45,7 @@ npc: npc/re/kafras/kafras_brasilis.txt
// -------------------------- Merchant --------------------------
npc: npc/re/merchants/3rd_trader.txt
npc: npc/re/merchants/diamond.txt
npc: npc/re/merchants/falcon_flute.txt
npc: npc/re/merchants/flute.txt
npc: npc/re/merchants/inn.txt
npc: npc/re/merchants/renters.txt
npc: npc/re/merchants/shops.txt