summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreuphyy <euphyy@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-12-02 06:37:51 +0000
committereuphyy <euphyy@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-12-02 06:37:51 +0000
commit621db2441f69736a6c8f10d26bf966d5414fac74 (patch)
treed905edfec4696cef65d02199342fc83e99034977
parent779e8c6fb93bbff8fba7d5ef287eb92590d115dd (diff)
downloadhercules-621db2441f69736a6c8f10d26bf966d5414fac74.tar.gz
hercules-621db2441f69736a6c8f10d26bf966d5414fac74.tar.bz2
hercules-621db2441f69736a6c8f10d26bf966d5414fac74.tar.xz
hercules-621db2441f69736a6c8f10d26bf966d5414fac74.zip
* Updated Sorcerer and Wanderer job quests to latest their latest versions (fixes bugreport:6966).
* Follow-up r16955: fixed an item_db mistake (bugreport:6967). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16991 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r--db/pre-re/item_db.txt2
-rw-r--r--db/re/item_db.txt2
-rw-r--r--npc/re/jobs/3-1/mechanic.txt6
-rw-r--r--npc/re/jobs/3-2/sorcerer.txt343
-rw-r--r--npc/re/jobs/3-2/wanderer.txt453
5 files changed, 238 insertions, 568 deletions
diff --git a/db/pre-re/item_db.txt b/db/pre-re/item_db.txt
index 44d195d33..391954fab 100644
--- a/db/pre-re/item_db.txt
+++ b/db/pre-re/item_db.txt
@@ -987,7 +987,7 @@
1821,Seismic_Fist,Seismic Fist,4,20,,650,80,,1,3,0x00008100,7,2,2,3,75,1,12,{ bonus3 bAutoSpell,"SA_SEISMICWEAPON",5,10; },{},{}
1822,Combo_Battle_Glove,Combo Battle Glove,4,20,,500,30,,1,4,0x00008100,7,2,2,3,60,1,12,{ bonus2 bSkillAtk,"MO_TRIPLEATTACK",15; bonus2 bSkillAtk,"MO_CHAINCOMBO",15; bonus2 bSkillAtk,"MO_COMBOFINISH",20; },{},{}
1823,BF_Knuckle1,Valorous Battle Fist,4,20,,0,30,,1,0,0x00008100,7,2,2,3,80,1,12,{ bonus bStr,2; bonus bAgi,1; bonus2 bAddRace,RC_DemiHuman,95; bonus2 bIgnoreDefRate,RC_DemiHuman,20; bonus4 bAutoSpell,"CH_SOULCOLLECT",1,5,0; bonus bUnbreakableWeapon,0; },{},{}
-1824,BF_Knuckle2,Brave Battle Fist,4,20,,0,30,,1,0,0x00008100,7,2,2,3,80,1,12,{ bonus bStr,2; bonus bInt,1; bonus2 bAddRace,RC_DemiHuman,95; bonus2 bCastrate,"MO_EXTREMITYFIST",-25; autobonus "{ bonus2 bCastrate,'MO_EXTREMITYFIST',-100; }",50,6000,BF_WEAPON,"{ specialeffect2 EF_SUFFRAGIUM; }"; bonus bUnbreakableWeapon,0; },{},{}
+1824,BF_Knuckle2,Brave Battle Fist,4,20,,0,30,,1,0,0x00008100,7,2,2,3,80,1,12,{ bonus bStr,2; bonus bInt,1; bonus2 bAddRace,RC_DemiHuman,95; bonus2 bCastrate,"MO_EXTREMITYFIST",-25; autobonus "{ bonus2 bCastrate,\"MO_EXTREMITYFIST\",-100; }",50,6000,BF_WEAPON,"{ specialeffect2 EF_SUFFRAGIUM; }"; bonus bUnbreakableWeapon,0; },{},{}
1825,Horn_Of_Hilthrion,Horn of Hillslion,4,20,,600,95,,1,3,0x00008000,2,2,2,3,60,1,12,{ bonus3 bAutoSpell,"NPC_CRITICALWOUND",1,100; bonus4 bAutoSpellOnSkill,"CH_PALMSTRIKE","MO_INVESTIGATE",1,100; bonus3 bAutoSpell,"MO_CALLSPIRITS",5,100; },{},{}
1826,Krieger_Knuckle1,Glorious Claw,4,20,,0,30,,1,0,0x00008100,7,2,2,4,80,1,12,{ bonus2 bAddRace,RC_DemiHuman,95; bonus2 bIgnoreDefRate,RC_DemiHuman,20; bonus bUnbreakableWeapon,0; if(getrefine()>5) { bonus2 bAddRace,RC_DemiHuman,(getrefine()-4)*(getrefine()-4); bonus2 bIgnoreDefRate,RC_DemiHuman,5; } if(getrefine()>8) { bonus3 bAutoSpell,"MO_INVESTIGATE",5,(getrefine()*10-50); bonus3 bAutoSpell,"AL_DECAGI",1,(getrefine()*10-50); } },{},{}
1827,Krieger_Knuckle2,Glorious Fist,4,20,,0,30,,1,0,0x00008100,7,2,2,4,80,1,12,{ bonus2 bAddRace,RC_DemiHuman,95; bonus2 bIgnoreDefRate,RC_DemiHuman,20; bonus bUnbreakableWeapon,0; if(getrefine()>5) { bonus2 bAddRace,RC_DemiHuman,(getrefine()-4)*(getrefine()-4); bonus2 bIgnoreDefRate,RC_DemiHuman,5; } if(getrefine()>8) { bonus2 bCastrate,"MO_EXTREMITYFIST",-100; bonus4 bautospellonskill,"MO_EXPLOSIONSPIRITS","CH_SOULCOLLECT",1,1000; } },{},{}
diff --git a/db/re/item_db.txt b/db/re/item_db.txt
index a479e106d..b68b19052 100644
--- a/db/re/item_db.txt
+++ b/db/re/item_db.txt
@@ -1050,7 +1050,7 @@
1821,Seismic_Fist,Seismic Fist,4,20,,650,80,,1,3,0x00008100,7,2,2,3,75,1,12,{ bonus3 bAutoSpell,"SA_SEISMICWEAPON",5,10; },{},{}
1822,Combo_Battle_Glove,Combo Battle Glove,4,20,,500,30,,1,4,0x00008100,7,2,2,3,60,1,12,{ bonus2 bSkillAtk,"MO_TRIPLEATTACK",15; bonus2 bSkillAtk,"MO_CHAINCOMBO",15; bonus2 bSkillAtk,"MO_COMBOFINISH",20; },{},{}
1823,BF_Knuckle1,Valorous Battle Fist,4,20,,0,30,,1,0,0x00008100,7,2,2,3,80,1,12,{ bonus bStr,2; bonus bAgi,1; bonus2 bAddRace,RC_DemiHuman,95; bonus2 bIgnoreDefRate,RC_DemiHuman,20; bonus4 bAutoSpell,"CH_SOULCOLLECT",1,5,0; bonus bUnbreakableWeapon,0; },{},{}
-1824,BF_Knuckle2,Brave Battle Fist,4,20,,0,30,,1,0,0x00008100,7,2,2,3,80,1,12,{ bonus bStr,2; bonus bInt,1; bonus2 bAddRace,RC_DemiHuman,95; bonus2 bVariableCastrate,"MO_EXTREMITYFIST",-25; autobonus "{ bonus2 bVariableCastrate,'MO_EXTREMITYFIST',-100; }",50,6000,BF_WEAPON,"{ specialeffect2 EF_SUFFRAGIUM; }"; bonus bUnbreakableWeapon,0; },{},{}
+1824,BF_Knuckle2,Brave Battle Fist,4,20,,0,30,,1,0,0x00008100,7,2,2,3,80,1,12,{ bonus bStr,2; bonus bInt,1; bonus2 bAddRace,RC_DemiHuman,95; bonus2 bVariableCastrate,"MO_EXTREMITYFIST",-25; autobonus "{ bonus2 bVariableCastrate,\"MO_EXTREMITYFIST\",-100; }",50,6000,BF_WEAPON,"{ specialeffect2 EF_SUFFRAGIUM; }"; bonus bUnbreakableWeapon,0; },{},{}
1825,Horn_Of_Hilthrion,Horn of Hillslion,4,20,,600,95,,1,3,0x00008000,2,2,2,3,60,1,12,{ bonus3 bAutoSpell,"NPC_CRITICALWOUND",1,100; bonus4 bAutoSpellOnSkill,"CH_PALMSTRIKE","MO_INVESTIGATE",1,100; bonus3 bAutoSpell,"MO_CALLSPIRITS",5,100; },{},{}
1826,Krieger_Knuckle1,Glorious Claw,4,20,,0,30,,1,0,0x00008100,7,2,2,4,80,1,12,{ bonus2 bAddRace,RC_DemiHuman,95; bonus2 bIgnoreDefRate,RC_DemiHuman,20; bonus bUnbreakableWeapon,0; if(getrefine()>5) { bonus2 bAddRace,RC_DemiHuman,pow(((getrefine()>14)?14:getrefine())-4,2); bonus2 bIgnoreDefRate,RC_DemiHuman,5; } if(getrefine()>8) { bonus3 bAutoSpell,"MO_INVESTIGATE",5,(getrefine()*10-50); bonus3 bAutoSpell,"AL_DECAGI",1,(getrefine()*10-50); } },{},{}
1827,Krieger_Knuckle2,Glorious Fist,4,20,,0,30,,1,0,0x00008100,7,2,2,4,80,1,12,{ bonus2 bAddRace,RC_DemiHuman,95; bonus2 bIgnoreDefRate,RC_DemiHuman,20; bonus bUnbreakableWeapon,0; if(getrefine()>5) { bonus2 bAddRace,RC_DemiHuman,pow(((getrefine()>14)?14:getrefine())-4,2); bonus2 bIgnoreDefRate,RC_DemiHuman,5; } if(getrefine()>8) { bonus2 bVariableCastrate,"MO_EXTREMITYFIST",-100; bonus4 bautospellonskill,"MO_EXPLOSIONSPIRITS","CH_SOULCOLLECT",1,1000; bonus bFixedCastrate,-100; } },{},{}
diff --git a/npc/re/jobs/3-1/mechanic.txt b/npc/re/jobs/3-1/mechanic.txt
index 0237eb6c7..f2aa384d5 100644
--- a/npc/re/jobs/3-1/mechanic.txt
+++ b/npc/re/jobs/3-1/mechanic.txt
@@ -652,13 +652,11 @@ OnTouch:
jupe_core2,288,142,3 script #Door 844,1,1,{
end;
OnInit:
- hideonnpc "#Door";
- end;
OnDisable:
- hideonnpc "#Door";
+ disablenpc "#Door";
end;
OnEnable:
- hideoffnpc "#Door";
+ enablenpc "#Door";
specialeffect EF_MAPPILLAR;
initnpctimer;
end;
diff --git a/npc/re/jobs/3-2/sorcerer.txt b/npc/re/jobs/3-2/sorcerer.txt
index f54991c78..761a34e0d 100644
--- a/npc/re/jobs/3-2/sorcerer.txt
+++ b/npc/re/jobs/3-2/sorcerer.txt
@@ -1,40 +1,39 @@
//===== rAthena Script =======================================
// Sorcerer Job change Quest
//===== By: ==================================================
-//= Masao
-//= Credits: Muad_Dib
+//= Muad_Dib
//===== Current Version: =====================================
-//= 1.1
+//= 1.2
//===== Compatible With: =====================================
//= Any rAthena SVN
//===== Description: =========================================
-//= [Translated from the Official]
+//= [Official Conversion]
//= Job change Quest from Sage / Professor -> Sorcerer.
//===== Additional Comments: =================================
-//= 1.0 First Version.
+//= 1.0 First Version. [Masao]
//= 1.1 Cleaning. [Euphy]
+//= 1.2 Updated script, optimized. [Euphy]
//============================================================
gef_tower,102,34,5 script Merito 742,{
-
- if(checkweight(1201,1) == 0){
+ mes "[Merito]";
+ if (checkweight(1201,1) == 0 || MaxWeight - Weight < 1000) {
mes "You packed so much in your bag. Try again after emptying your bag.";
close;
}
- mes "[Merito]";
- if (Class == Job_Sorcerer || Class == Job_Sorcerer_T || Class == Job_Baby_Sorcerer){
+ if (Class == Job_Sorcerer || Class == Job_Sorcerer_T || Class == Job_Baby_Sorcerer) {
mes "Please get on with the sprits well~ You should~!";
close;
}
- if (JobLevel < 50 || SkillPoint != 0 || BaseLevel < 99){
+ if (BaseLevel < 99 || JobLevel < 50 || SkillPoint != 0) {
mes "Wow~ you are a young adventurer. I envy you.";
close;
}
- if ((Class != Job_Sage) && (Class != Job_Professor) && (Class != Job_Baby_Sage)){
- mes "Wow~ you are a young adventurer. I envy you.";
+ if (BaseJob != Job_Sage) {
+ mes "Ahh~ I think you don't need to have a conversation with me.";
close;
}
- if (job_soc < 1){
+ if (job_soc == 0) {
mes "Welcome. What can I help you with?";
next;
select("Do you know about Sorcerers?");
@@ -44,7 +43,7 @@ gef_tower,102,34,5 script Merito 742,{
mes "[Merito]";
mes "What made you want to be a sorcerer?";
next;
- if(select("The spirit of fire led me here.:The spirit of water led me here.:The spirit of earth led me here:The spirit of meat led me here.")==4) {
+ if(select("The spirit of fire led me here.:The spirit of water led me here.:The spirit of earth led me here:The spirit of meat led me here.") == 4) {
mes "[Merito]";
mes "That kind of spirit doesn't exist!";
close;
@@ -56,27 +55,26 @@ gef_tower,102,34,5 script Merito 742,{
mes "[Merito]";
mes "Hmm... Then first, can you write down your name on this list?";
next;
- if(select("Write name.:I won't.")==2){
+ if(select("Write name.:I won't.") == 2) {
mes "[Merito]";
mes "Well, okay. See you again when you get a chance.";
close;
}
mes "[Merito]";
- mes "So, you are ["+strcharinfo(0)+"].";
+ mes "So, you are [" + strcharinfo(0) + "].";
next;
mes "[Merito]";
mes "Give me a second to register your name.";
mes "Talk to me again in a second.";
set job_soc,1;
close;
- }
- else if (job_soc == 1){
+ } else if (job_soc == 1) {
mes "Good, then I'll give you a short explanation about the Sorcerer.";
next;
mes "[Merito]";
- mes "["+strcharinfo(0)+"], can you handle magic skillfully?";
+ mes "[" + strcharinfo(0) + "], can you handle magic skillfully?";
next;
- if(select("Yes, I can.:No, I'm not really good at it.")==2){
+ if(select("Yes, I can.:No, I'm not really good at it.") == 2) {
mes "[Merito]";
mes "What!? You don't know how to use magic?";
mes "What are you doing here then? Get out of here. Right now!";
@@ -86,7 +84,7 @@ gef_tower,102,34,5 script Merito 742,{
mes "Okay, that should be obvious.";
mes "Of course, Sorcerers use magic, too. But, do you know the main difference Sorcerers have from other magical jobs?";
next;
- switch(select("They know how to sing.:They're all old fogies.:They can deal with the spirits.")){
+ switch(select("They know how to sing.:They're all old fogies.:They can deal with the spirits.")) {
case 1:
mes "[Merito]";
mes "Well maybe some but that's not the main difference.";
@@ -110,7 +108,7 @@ gef_tower,102,34,5 script Merito 742,{
mes "[Merito]";
mes "Well, it's all up to you. What are you going to do?";
next;
- switch(select("I will take the test.:I'll do it later.")){
+ switch(select("I will take the test.:I'll do it later.")) {
case 1:
mes "[Merito]";
mes "Okay. ";
@@ -123,44 +121,41 @@ gef_tower,102,34,5 script Merito 742,{
mes "What? I was sure that you wanted to become a Sorcerer.";
close;
}
- }
- else if (job_soc > 1){
- mes "How about your test? Well, Karacas is a little lazy, so that might bother you some...";
+ } else {
+ mes "How about your test? Well, Karacas is a little lazy, so that might bother you some... kkk";
close;
}
}
gef_tower,113,161,5 script Karacas 754,{
-
- if(checkweight(1201,1) == 0){
- mes "You packed so much in your bag. Try again after emptying your bag.";
+ mes "[Karacas]";
+ if (checkweight(1201,1) == 0 || MaxWeight - Weight < 1000) {
+ mes "Oh, it seems that you're too heavy. Empty your bag and then come again.";
close;
}
- mes "[Karacas]";
- if (Class == Job_Sorcerer || Class == Job_Sorcerer_T || Class == Job_Baby_Sorcerer){
+ if (Class == Job_Sorcerer || Class == Job_Sorcerer_T || Class == Job_Baby_Sorcerer) {
mes "You look happy. Have a great journey.";
close;
}
- if (JobLevel < 50 || SkillPoint != 0 || BaseLevel < 99){
+ if ((JobLevel < 50) || (SkillPoint != 0) || (BaseLevel < 99)) {
mes "Is there anything I can do for you?";
close;
}
- if ((Class != Job_Sage) && (Class != Job_Professor) && (Class != Job_Baby_Sage)){
- mes "Is there anything I can do for you?";
+ if (BaseJob != Job_Sage) {
+ mes "I belong to the Sorcerer association. I don't think you have any business with me.";
close;
}
- if (job_soc < 2){
- mes "More people are visiting Geffen Tower thesedays.";
+ if (job_soc < 2) {
+ mes "More people are visiting Geffen Tower these days.";
close;
- }
- else if (job_soc == 2){
+ } else if (job_soc == 2) {
mes "....";
next;
select("Ah... excuse me~");
mes "[Karacas]";
mes "... (Z z z~)";
next;
- selecT("Hm hm!!!~");
+ select("Hm hm!!!~");
mes "[Karacas]";
mes "Aaaak!! ";
mes "Oh, my... ";
@@ -174,9 +169,9 @@ gef_tower,113,161,5 script Karacas 754,{
mes "The list... has already arrived.";
next;
mes "[Karacas]";
- mes "So, you are ["+strcharinfo(0)+"]... right?";
+ mes "So, you are [" + strcharinfo(0) + "]... right?";
next;
- if(select("Yes, I am.:No, I'm not!")==2){
+ if(select("Yes, I am.:No, I'm not!") == 2) {
mes "[Karacas]";
mes "Oh, there must be some mistake in the list, I think. Will you come again later?";
close;
@@ -234,9 +229,8 @@ gef_tower,113,161,5 script Karacas 754,{
set job_soc,3;
changequest 12096,12097;
close;
- }
- else if (job_soc == 3){
- if ((countitem(992) > 2) && (countitem(991) > 2) && (countitem(990) > 2) && (countitem(993) > 2)){
+ } else if (job_soc == 3) {
+ if (countitem(992) > 2 && countitem(991) > 2 && countitem(990) > 2 && countitem(993) > 2) {
mes "Oh, you have all the materials.";
next;
select("What should I do next?");
@@ -294,7 +288,7 @@ gef_tower,113,161,5 script Karacas 754,{
mes "[Karacas]";
mes "Have any questions?";
next;
- if(select("No.:Please explain it again.")==2){
+ if(select("No.:Please explain it again.") == 2) {
mes "[Karacas]";
mes "Haha, then can I have a cup of water for a minute? Please come and find me again later.";
next;
@@ -318,18 +312,17 @@ gef_tower,113,161,5 script Karacas 754,{
mes "[Karacas]";
mes "When you bring these basic things, I'll guide you to the next step.";
close;
- }
- else if (job_soc == 4){
- if (countitem(6276) && countitem(6278) && countitem(6277)){
+ } else if (job_soc == 4) {
+ if (countitem(6276) && countitem(6278) && countitem(6277)) {
mes "Wow~ your skill is good.";
mes "I thought you'd be overwhelmed by the spirits but you've managed to get the effective medicine!";
next;
select("Is this all I need to do?");
mes "[Karacas]";
mes "Well done. First, I will organize the miraculous medicine so please wait a moment.";
- delitem 6276,1;
- delitem 6278,1;
- delitem 6277,1;
+ delitem 6276,1; //Clear_Reagent
+ delitem 6278,1; //Black_Reagent
+ delitem 6277,1; //Red_Reagent
set job_soc,5;
completequest 12098;
close;
@@ -339,247 +332,89 @@ gef_tower,113,161,5 script Karacas 754,{
mes "[Karacas]";
mes "Don't give up and keep on trying~";
close;
- }
- else if (job_soc == 5){
+ } else if (job_soc == 5) {
mes "Originally my teacher needs to check the Sorcerer job change but after he went out to find the spirit of fish, I can't see him. So I'll check it myself.";
next;
mes "[Karacas]";
- mes "Dear ["+strcharinfo(0)+"],";
+ mes "Dear [" + strcharinfo(0) + "],";
mes "you went around the rough wilds to open the door as a Sorcerer and passed all the requirements that our Academy has given.";
next;
mes "[Karacas]";
mes "Of course it is just a beginning, we don't know which spirit you're going to commune with or what kind of hardships await you.";
next;
mes "[Karacas]";
- mes "But with the ability you've shown until now, you will be capable to do anything from now on. Dear ["+strcharinfo(0)+"]";
+ mes "But with the ability you've shown until now, you will be capable to do anything from now on. Dear [" + strcharinfo(0) + "]";
next;
- mes "[Karacas]";
+ mes "[Kalakas]";
+ if (BaseLevel < 99 || JobLevel < 50 || SkillPoint) {
+ mes "Before I appointed you the need job, please check on your own body status. ";
+ next;
+ mes "[Kalakas]";
+ mes "You must have the etiquette of your job now before you accept the new job! ";
+ close;
+ }
+ if (ismounting()) {
+ mes "Good, before we get started...";
+ mes "Please unequip your riding pet~";
+ close;
+ }
mes "Moreover, I formally acknowledge that you've completed all the job transfer tests of the Sorcerer Academy.";
next;
mes "[Karacas]";
- mes "Congratulations, ["+strcharinfo(0)+"]";
+ mes "Congratulations, [" + strcharinfo(0) + "]";
jobchange roclass(eaclass()|EAJL_THIRD);
- getitem 5756,1;
- getitem 2795,1;
+ getitem 5756,1; //Wind_Whisper
+ getitem 2795,1; //Green_Apple_Ring
next;
mes "[Karacas]";
mes "I hope that you gain more communion with spirits from now on.";
close;
}
}
+- script Spirit Detecting Staff#0 -1,{
-thor_v01,64,252,0 script Spirit Detecting Staff#1 836,{
+ if (strnpcinfo(4) == "thor_v01") setarray .@id[0],990,994,6276,6278;
+ else if (strnpcinfo(4) == "ice_dun01") setarray .@id[0],991,995,6278,6276;
+ else if (strnpcinfo(4) == "mjo_dun03") setarray .@id[0],993,997,6277,6276;
+ else if (strnpcinfo(4) == "gon_dun02") setarray .@id[0],992,996,6277,6278;
- if ((job_soc == 4) && (countitem(990) > 2)){
+ if (job_soc == 4 && countitem(.@id[0]) > 2) {
progressbar "ffff00",5;
- set .@rand,rand(1,70);
- if (.@rand < 10){
- if ((job_soc == 4) && (countitem(990) > 2) && (countitem(6276) < 1)){
- mes "You got a reagent by communicating with an unseen spirit.";
- delitem 990,3;
- getitem 6276,1;
- close;
- }else if ((job_soc == 4) && (countitem(990) > 2) && (countitem(6276) > 0)){
- mes "It doesn't seem like you got anything special from the spirits.";
- delitem 990,3;
- close;
- }
- mes "The spirit is mad at you.";
- close;
- }else if ((.@rand > 9) && (.@rand < 16)){
- if ((job_soc == 4) && (countitem(990) > 2) && (countitem(6278) < 1)){
+ delitem .@id[0],3; //Boody_Red,Crystal_Blue,Yellow_Live,Wind_Of_Verdure
+ set .@soc_ran, rand(1,70);
+ if (.@soc_ran < 10) {
+ if (countitem(.@id[2]) == 0) {
mes "You got a reagent by communicating with an unseen spirit.";
- delitem 990,3;
- getitem 6278,1;
- close;
- }else if ((job_soc == 4) && (countitem(990) > 2) && (countitem(6278) > 0)){
- mes "It doesn't seem like you got anything special from the spirits.";
- delitem 990,3;
- close;
- }
- mes "The spirit is mad at you.";
- close;
- }else if (.@rand == 56){
- if ((job_soc == 4) && (countitem(990) > 2)){
- mes "The spirit combined the property stones into a huge property stone.";
- delitem 990,3;
- getitem 994,1;
+ getitem .@id[2],1; //Clear_Reagent,Black_Reagent,Red_Reagent
close;
}
- mes "The spirit is mad at you.";
+ mes "It doesn't seem like you got anything special from the spirits.";
close;
- }
- mes "You used the property stones but it looks like you failed to communicate with the spirits.";
- delitem 990,3;
- close;
- }else if ((job_soc == 4) && (countitem(990) < 3)){
- mes "I can see the detecting staff that's been installed by the Sorcerer Union to communicate with the spirits .";
- next;
- mes "If you have the suitable property stones, you should be able to commune with the spirits.";
- close;
- }
- mes "I can see the detecting staff that's been installed by the Sorcerer Union to communicate with the spirits .";
- close;
-}
-
-ice_dun01,274,274,0 script Spirit Detecting Staff#2 836,{
-
- if ((job_soc == 4) && (countitem(991) > 2)){
- progressbar "ffff00",5;
- set .@rand,rand(1,70);
- if (.@rand < 10){
- if ((job_soc == 4) && (countitem(991) > 2) && (countitem(6278) < 1)){
+ } else if (.@soc_ran > 9 && .@soc_ran < 16) {
+ if (countitem(.@id[3]) == 0) {
mes "You got a reagent by communicating with an unseen spirit.";
- delitem 991,3;
- getitem 6278,1;
- close;
- }else if ((job_soc == 4) && (countitem(991) > 2) && (countitem(6278) > 0)){
- mes "It doesn't seem like you got anything special from the spirits.";
- delitem 991,3;
+ getitem .@id[3],1; //Clear_Reagent,Black_Reagent,Red_Reagent
close;
}
- mes "The spirit is mad at you.";
+ mes "It doesn't seem like you got anything special from the spirits.";
close;
- }else if ((.@rand > 9) && (.@rand < 16)){
- if ((job_soc == 4) && (countitem(991) > 2) && (countitem(6276) < 1)){
- mes "You got a reagent by communicating with an unseen spirit.";
- delitem 991,3;
- getitem 6276,1;
- close;
- }else if ((job_soc == 4) && (countitem(991) > 2) && (countitem(6276) > 0)){
- mes "It doesn't seem like you got anything special from the spirits.";
- delitem 991,3;
- close;
- }
- mes "The spirit is mad at you.";
+ } else if (.@soc_ran == 56) {
+ mes "The spirit combined the property stones into a huge property stone.";
+ getitem .@id[1],1; //Flame_Heart,Mistic_Frozen,Great_Nature,Rough_Wind
close;
- }else if (.@rand == 56){
- if ((job_soc == 4) && (countitem(991) > 2)){
- mes "The spirit combined the property stones into a huge property stone.";
- delitem 991,3;
- getitem 995,1;
- close;
- }
- mes "The spirit is mad at you.";
+ } else {
+ mes "You used the property stones but it looks like you failed to communicate with the spirits.";
close;
}
- mes "You used the property stones but it looks like you failed to communicate with the spirits.";
- delitem 991,3;
- close;
- }else if ((job_soc == 4) && (countitem(991) < 3)){
- mes "I can see the detecting staff that's been installed by the Sorcerer Union to communicate with the spirits .";
- next;
- mes "If you have the suitable property stones, you should be able to commune with the spirits.";
- close;
}
- mes "I can see the detecting staff that's been installed by the Sorcerer Union to communicate with the spirits .";
- close;
-}
-
-mjo_dun03,200,141,0 script Spirit Detecting Staff#3 836,{
-
- if ((job_soc == 4) && (countitem(993) > 2)){
- progressbar "ffff00",5;
- set .@rand,rand(1,70);
- if (.@rand < 10){
- if ((job_soc == 4) && (countitem(993) > 2) && (countitem(6277) < 1)){
- mes "You got a reagent by communicating with an unseen spirit.";
- delitem 993,3;
- getitem 6277,1;
- close;
- }else if ((job_soc == 4) && (countitem(993) > 2) && (countitem(6277) > 0)){
- mes "It doesn't seem like you got anything special from the spirits.";
- delitem 993,3;
- close;
- }
- mes "The spirit is mad at you.";
- close;
- }else if ((.@rand > 9) && (.@rand < 16)){
- if ((job_soc == 4) && (countitem(993) > 2) && (countitem(6276) < 1)){
- mes "You got a reagent by communicating with an unseen spirit.";
- delitem 993,3;
- getitem 6276,1;
- close;
- }else if ((job_soc == 4) && (countitem(993) > 2) && (countitem(6276) > 0)){
- mes "It doesn't seem like you got anything special from the spirits.";
- delitem 993,3;
- close;
- }
- mes "The spirit is mad at you.";
- close;
- }else if (.@rand == 56){
- if ((job_soc == 4) && (countitem(993) > 2)){
- mes "The spirit combined the property stones into a huge property stone.";
- delitem 993,3;
- getitem 997,1;
- close;
- }
- mes "The spirit is mad at you.";
- close;
- }
- mes "You used the property stones but it looks like you failed to communicate with the spirits.";
- delitem 993,3;
- close;
- }else if ((job_soc == 4) && (countitem(993) < 3)){
- mes "I can see the detecting staff that's been installed by the Sorcerer Union to communicate with the spirits .";
+ mes "I can see the detecting staff that's been installed by the Sorcerer Union to communicate with the spirits.";
+ if (job_soc == 4 && countitem(.@id[0]) < 3) {
next;
mes "If you have the suitable property stones, you should be able to commune with the spirits.";
- close;
}
- mes "I can see the detecting staff that's been installed by the Sorcerer Union to communicate with the spirits .";
close;
}
-
-gon_dun02,195,190,0 script Spirit Detecting Staff#4 836,{
-
- if ((job_soc == 4) && (countitem(992) > 2)){
- progressbar "ffff00",5;
- set .@rand,rand(1,70);
- if (.@rand < 10){
- if ((job_soc == 4) && (countitem(992) > 2) && (countitem(6277) < 1)){
- mes "You got a reagent by communicating with an unseen spirit.";
- delitem 992,3;
- getitem 6277,1;
- close;
- }else if ((job_soc == 4) && (countitem(992) > 2) && (countitem(6277) > 0)){
- mes "It doesn't seem like you got anything special from the spirits.";
- delitem 992,3;
- close;
- }
- mes "The spirit is mad at you.";
- close;
- }else if ((.@rand > 9) && (.@rand < 16)){
- if ((job_soc == 4) && (countitem(992) > 2) && (countitem(6278) < 1)){
- mes "You got a reagent by communicating with an unseen spirit.";
- delitem 992,3;
- getitem 6278,1;
- close;
- }else if ((job_soc == 4) && (countitem(992) > 2) && (countitem(6278) > 0)){
- mes "It doesn't seem like you got anything special from the spirits.";
- delitem 992,3;
- close;
- }
- mes "The spirit is mad at you.";
- close;
- }else if (.@rand == 56){
- if ((job_soc == 4) && (countitem(992) > 2)){
- mes "The spirit combined the property stones into a huge property stone.";
- delitem 992,3;
- getitem 996,1;
- close;
- }
- mes "The spirit is mad at you.";
- close;
- }
- mes "You used the property stones but it looks like you failed to communicate with the spirits.";
- delitem 992,3;
- close;
- }else if ((job_soc == 4) && (countitem(992) < 3)){
- mes "I can see the detecting staff that's been installed by the Sorcerer Union to communicate with the spirits .";
- next;
- mes "If you have the suitable property stones, you should be able to commune with the spirits.";
- close;
- }
- mes "I can see the detecting staff that's been installed by the Sorcerer Union to communicate with the spirits .";
- close;
-} \ No newline at end of file
+thor_v01,64,252,0 duplicate(Spirit Detecting Staff#0) Spirit Detecting Staff#1 836
+ice_dun01,274,274,0 duplicate(Spirit Detecting Staff#0) Spirit Detecting Staff#2 836
+mjo_dun03,200,141,0 duplicate(Spirit Detecting Staff#0) Spirit Detecting Staff#3 836
+gon_dun02,195,190,0 duplicate(Spirit Detecting Staff#0) Spirit Detecting Staff#4 836 \ No newline at end of file
diff --git a/npc/re/jobs/3-2/wanderer.txt b/npc/re/jobs/3-2/wanderer.txt
index 062c9b685..ea928ab7b 100644
--- a/npc/re/jobs/3-2/wanderer.txt
+++ b/npc/re/jobs/3-2/wanderer.txt
@@ -3,17 +3,18 @@
//===== By: ==================================================
//= Muad_Dib, Meyraw
//===== Current Version: =====================================
-//= 1.3
+//= 1.4
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
-//= Official Script
+//= [Official Conversion]
//= Job change Quest from Dancer / Gypsy -> Wanderer.
//===== Additional Comments: =================================
//= 1.0 First Version.
//= 1.1 Updated dialogue to be more official / accurate. Huge thanks to Muad_Dib! [Masao]
//= 1.2 Fixed an endless loop in dialogue.
//= 1.3 Fixed a typo and added checkquest. [Joseph]
+//= 1.4 Updated script, optimized. [Euphy]
//============================================================
xmas,162,209,5 script Aspiring Wanderer, Soy 714,{
@@ -28,7 +29,7 @@ xmas,162,209,5 script Aspiring Wanderer, Soy 714,{
mes "[Soy]";
mes "Don't make fun of me Mimi~";
mes "I have dreamed of being at Dancer Kim's stage for a very long time!";
- emotion e_shy;
+ emotion e_shy,0,"Aspiring Wanderer, Soy";
next;
mes "[Soy]";
mes "I might lose my senses if I really see her dancing like a beautiful angel sent from above.";
@@ -40,10 +41,10 @@ xmas,162,209,5 script Aspiring Wanderer, Soy 714,{
mes "[Mimi]";
mes "But I understand you.";
mes "Many people are looking forward to meeting the best Wanderer in the world.";
- if (Class != Job_Baby_Dancer && Class != Job_Dancer && Class != Job_Gypsy && BaseLevel != 99) close;
+ if (BaseJob != Job_Dancer || BaseLevel < 99) close;
next;
select("Dancer Kim?:Wanderer?");
- emotion e_omg;
+ emotion e_omg,0,"Aspiring Wanderer, Soy";
mes "[Soy]";
mes "What? You don't know the famous Wanderer, Dancer Kim?";
mes "Oh my, oh my!!!";
@@ -51,7 +52,7 @@ xmas,162,209,5 script Aspiring Wanderer, Soy 714,{
mes "Oh, no!";
next;
mes "[Mimi]";
- mes "A Wanderer is a knee-spirited person who wanders about the world with the wind and the stars.";
+ mes "A Wanderer is a free-spirited person who wanders about the world with the wind and the stars.";
mes "Rhythm and Music accompany them wherever they go.";
next;
mes "[Mimi]";
@@ -64,131 +65,60 @@ xmas,162,209,5 script Aspiring Wanderer, Soy 714,{
mes "If you are a true Dancer, you must be struck with her Dance!";
mes "Will I ever meet a Maestro like Guitar Song someday, Mimi?";
next;
- emotion e_heh;
+ emotion e_heh,0,"Aspiring Wanderer, Soy";
mes "[Mimi]";
mes "Just hang in there, Soy. Ha ha.";
next;
- if (select("Where is the performance?:End the conversation.") == 1) {
+ switch(select("Where is the performance?:End the conversation.")) {
+ case 1:
mes "[Soy]";
mes "Right in front of the Christmas tree!";
mes "White snow, beautiful melody, and my captivating dance.";
mes "Don't you think it would be a great performance?";
set job_wan,1;
close;
- }
- mes "[Mimi]";
- mes "If you are interested in becoming a Wanderer, just come back to me anytime. Although I'm not perfect, I will try my best to help you.";
- close;
- }
- if (job_wan == 1) {
- mes "[Soy]";
- mes "The performance will be held in front of the Christmas tree here in Lutie.";
- mes "I can't wait! Ah~ I'm losing my senses, Mimi.";
- close;
- }
- if (job_wan == 10) {
- mes "[Soy]";
- mes "<Nollio> is the best!!";
- close;
- }
- mes "[Soy]";
- mes "I want to become an famous Wanderer too, Mimi.";
- close;
-}
-
-xmas,163,209,3 script Aspiring Wanderer, Mimi 714,{
- if (job_wan == 0) {
- mes "[Soy]";
- mes "Mimi, what should I do?";
- mes "My heart is beating so fast. Ahhh~";
- next;
- mes "[Mimi]";
- mes "Why is you face so flushed? Ha ha ha.";
- next;
- mes "[Soy]";
- mes "Don't make fun of me Mimi~";
- mes "I have dreamed of being at Dancer Kim's stage for a very long time!";
- emotion e_shy,0,"Aspiring Wanderer, Soy";
- next;
- mes "[Soy]";
- mes "I might lose my senses if I really see her dancing like a beautiful angel sent from above.";
- next;
- mes "[Mimi]";
- mes "Calm down, Soy.";
- mes "You are going to faint even before the performance starts. Ha ha.";
- next;
- mes "[Mimi]";
- mes "But I understand you.";
- mes "Many people are looking forward to meeting the best Wanderer in the world.";
- if ((Class != Job_Baby_Dancer) && (Class != Job_Dancer) && (Class != Job_Gypsy) && (BaseLevel != 99)) {
+ case 2:
+ mes "[Mimi]";
+ mes "If you are interested in becoming a Wanderer, just come back to me anytime. Although I'm not perfect, I will try my best to help you.";
close;
}
- next;
- select("Dancer Kim?:Wanderer?");
- emotion e_omg,0,"Aspiring Wanderer, Soy";
- mes "[Soy]";
- mes "What? You don't know the famous Wanderer, Dancer Kim?";
- mes "Oh my, oh my!!!";
- mes "You seem to know the art of dancing but how come you don't know her?";
- mes "Oh, no!";
- next;
- mes "[Mimi]";
- mes "A Wanderer is a knee-spirited person who wanders about the world with the wind and the stars.";
- mes "Rhythm and Music accompany them wherever they go.";
- next;
- mes "[Mimi]";
- mes "Dancer Kim is the most famous Wanderer who tours the world with the Maestro Guitar Dong as the team <Nollio>.";
- next;
- mes "[Mimi]";
- mes "Soy and myself are Aspiring Wanderers, and there will be a performance of <Nollio> in this town soon, so we are eagerly looking forward to see it.";
- next;
- mes "[Soy]";
- mes "If you are a true Dancer, you must be struck with her Dance!";
- mes "Will I ever meet a Maestro like Guitar Song someday, Mimi?";
- next;
- emotion e_heh,0,"Aspiring Wanderer, Soy";
- mes "[Mimi]";
- mes "Just hang in there, Soy. Ha ha.";
- next;
- if (select("Where is the performance?:End the conversation.") == 1) {
+ } else if (job_wan == 1) {
+ if (strnpcinfo(0) == "Aspiring Wanderer, Soy") {
mes "[Soy]";
- mes "Right in front of the Christmas tree!";
- mes "White snow, beautiful melody, and my captivating dance.";
- mes "Don't you think it would be a great performance?";
- set job_wan, 1;
- close;
+ mes "The performance will be held in front of the Christmas tree here in Lutie.";
+ mes "I can't wait! Ah~ I'm losing my senses, Mimi.";
+ } else {
+ mes "[Mimi]";
+ mes "A Wanderer's dancing charm is higher than that of a dancer or gypsy, everyone will lose their souls when they see their performance.";
+ next;
+ mes "[Mimi]";
+ mes "I want to become a Wanderer, but I'm still a dancer.";
+ mes "But I think^3131FF it's better to learn Gypsy's unique skills first, and then become a Wanderer^000000. Soy can't wait to become a Wanderer.";
}
- mes "[Mimi]";
- mes "If you are interested in becoming a Wanderer, just come back to me anytime. Although I'm not perfect, I will try my best to help you.";
- close;
- }
- if (job_wan == 1) {
- mes "[Mimi]";
- mes "A Wanderer's dancing charm is higher than that of a dancer or gypsy, everyone will lose their souls when they see their performance.";
- next;
- mes "[Mimi]";
- mes "I want to become a Wanderer, but I'm still a dancer.";
- mes "But I think^3131FF it's better to learn Gypsy's unique skills first, and then become a Wanderer^000000. Soy can't wait to become a Wanderer.";
close;
- }
- if (job_wan == 10) {
+ } else if (job_wan == 10) {
mes "[Soy]";
mes "<Nollio> is the best!!";
close;
+ } else {
+ if (strnpcinfo(0) == "Aspiring Wanderer, Soy") {
+ mes "[Soy]";
+ mes "I want to become an famous Wanderer too, Mimi.";
+ } else {
+ mes "[Mimi]";
+ mes "Not sure if I'm greedy, but I need to learn all Dancer and Gypsy skills before I can become a Wanderer.";
+ }
+ close;
}
- mes "[Mimi]";
- mes "Not sure if I'm greedy, but I need to learn all Dancer and Gypsy skills before I can become a Wanderer.";
- close;
}
+xmas,163,209,3 duplicate(Aspiring Wanderer, Soy) Aspiring Wanderer, Mimi 714
xmas,132,143,5 script Performance Manager#wnd 713,{
+ mes "[Performance Manager]";
if (job_wan == 0) {
- mes "[Performance Manager]";
mes "Oh, what should I do?";
close;
- }
- if (job_wan == 1) {
- mes "[Performance Manager]";
+ } else if (job_wan == 1) {
mes "Oh, what should I do?";
mes "Why did they do this?";
next;
@@ -201,10 +131,10 @@ xmas,132,143,5 script Performance Manager#wnd 713,{
next;
while (1) {
set .@loop,0;
- switch (select("Sorry, I don't care.:What's the matter?:Why are you telling me this?")) {
+ switch(select("Sorry, I don't care.:What's the matter?:Why are you telling me this?")) {
case 1:
mes "[Performance Manager]";
- mes "Ah! What a harsh world!";
+ mes "That's a bit harsh don't you think?";
close;
case 2:
mes "[Performance Manager]";
@@ -228,7 +158,7 @@ xmas,132,143,5 script Performance Manager#wnd 713,{
}
while (1) {
set .@loop,0;
- switch (select("Is there a problem?:Who do you mean?:It has nothing to do with me.")) {
+ switch(select("Is there a problem?:Who do you mean?:It has nothing to do with me.")) {
case 1:
mes "[Performance Manager]";
mes "How could they do that?";
@@ -245,26 +175,26 @@ xmas,132,143,5 script Performance Manager#wnd 713,{
break;
case 2:
mes "[Performance Manager]";
- mes "<Nollio>!";
- mes "Who else!";
- mes "Do you know them?";
- mes "They are the worst group in the world.";
+ mes "Who?!";
+ mes "It's <Nollio>!";
+ mes "You call that a question?";
+ mes "They are the worst people in the world.";
next;
break;
case 3:
mes "[Performance Manager]";
- mes "This is too much!";
+ mes "What a heartless thing to say!";
close;
}
if (.@loop) break;
}
while (1) {
set .@loop,0;
- switch (select("Are you afraid of people?:The performers caused trouble?:Ignore him.")) {
+ switch(select("Are you afraid of people?:The performers caused trouble?:Ignore him.")) {
case 1:
mes "[Performance Manager]";
- mes "If it were you, wouldn't you be afraid?";
- mes "I'm the performance manager! Do you know how much money it costs behind the scenes? I need to face the expectations of all those people!";
+ mes "Wouldn't you be afraid of all the eyes of people if you were me?";
+ mes "I am in charge of this performance! A lot of people are looking forward to see it and there are many sponsors who are supporting us! I'm so stressed.";
next;
break;
case 2:
@@ -318,7 +248,7 @@ xmas,132,143,5 script Performance Manager#wnd 713,{
mes "[Performance Manager]";
mes "Hey! Can you please go out and find the Maestro Guitar Song?";
next;
- switch (select("Ah, okay.:Why should I do that?:I won't!")) {
+ switch(select("Ah, okay.:Why should I do that?:I won't!")) {
case 1:
break;
case 2:
@@ -327,12 +257,12 @@ xmas,132,143,5 script Performance Manager#wnd 713,{
mes "You're asking me why!?";
mes "Ahh, no.....";
mes "It's because you seem like a similar artist.";
- mes "you also wanted to watch the performance, didn't you?";
+ mes "You also wanted to watch the performance, didn't you?";
next;
break;
case 3:
mes "[Performance Manager]";
- mes "You are pushing my limits...";
+ mes "You are so cold-hearted....";
close;
}
mes "[Performance Manager]";
@@ -345,26 +275,19 @@ xmas,132,143,5 script Performance Manager#wnd 713,{
set job_wan,2;
setquest 2218;
close;
- }
- if (job_wan == 2) {
- mes "[Performance Manager]";
+ } else if (job_wan == 2) {
mes "I am not sure if Guitar Song is in Comodo, you should go there and find him!";
close;
- }
- if (job_wan == 9) {
- mes "[Performance Manager]";
+ } else if (job_wan == 9) {
mes "They came back!!";
close;
- }
- if (job_wan == 10) {
- mes "[Performance Manager]";
- mes "Thanks to you, the performance was a success.";
- mes "You really are a good friend!";
- mes "As a token of my appreciation, I will hold a performance just for you when I get a chance.";
+ } else if (job_wan == 10) {
+ mes "Thanks to you, the performance was successful.";
+ mes "You are so competent!";
+ mes "In return, I will prepare the stage for you someday.";
close;
}
- mes "[Performance Manager]";
- mes "Ah~ What a mess, ah!";
+ mes "Ahhh, so distracting!";
close;
}
@@ -379,8 +302,7 @@ comodo,140,86,5 script Cheerless Maestro 479,{
mes "[Cheerless Maestro]";
mes "Whew...";
close;
- }
- if (job_wan == 2) {
+ } else if (job_wan == 2) {
mes "[Cheerless Maestro]";
mes "You can dance ~";
mes "You can do your work ~";
@@ -388,9 +310,9 @@ comodo,140,86,5 script Cheerless Maestro 479,{
mes "I am the tambourine King ~";
next;
mes "- You found a Maestro -";
- mes "- singing a weird song -";
+ mes "- singing a weird song. -";
next;
- if (select("That's a weird song.:Ignore it.") == 2) {
+ if(select("That's a weird song.:Ignore it.") == 2) {
mes "- What a weird person, I better stay away. -";
close;
}
@@ -437,17 +359,16 @@ comodo,140,86,5 script Cheerless Maestro 479,{
mes "Hey, I told you to stop talking about this matter....";
mes "I don't want to think about it. It just hurts my feelings.";
next;
- mes "- Guitar Song is adamantly refusing to talk. What should I do to hear the story about<Nollio>? -";
+ mes "- Guitar Song is adamantly refusing to talk. What should I do to hear the story about <Nollio>? -";
set job_wan,3;
close;
- }
- if (job_wan == 3) {
+ } else if (job_wan == 3) {
mes "[" + strcharinfo(0) + "]";
mes "(Would it be possible for me to make him tell me what happened with Nollio?)";
next;
- switch (select("Use Dazzler:Use Lullaby: Use Lucky Luck")) {
+ switch(select("Use Dazzler:Use Lullaby:Use Lucky Luck")) {
case 1:
- if (getskilllv("DC_UGLYDANCE") == 5) {
+ if (getskilllv("DC_UGLYDANCE") == 5 || rand(100) >= 80) {
mes "- You get closer to Song's ear. -";
next;
mes "[" + strcharinfo(0) + "]";
@@ -458,7 +379,7 @@ comodo,140,86,5 script Cheerless Maestro 479,{
specialeffect EF_STUNATTACK;
next;
mes "[Guitar Song]";
- mes "Wh..what!! What are you doing?!?";
+ mes "Wh...what!! What are you doing?!?";
mes "You almost damaged my eardrum.";
emotion e_an;
next;
@@ -473,57 +394,27 @@ comodo,140,86,5 script Cheerless Maestro 479,{
mes "So many people are supporting you with anticipation.";
mes "Would you break your promise and let people down? Not giving people any reason?";
next;
+ } else {
+ mes "[" + strcharinfo(0) + "]";
+ mes "Okay-";
+ next;
+ mes "[" + strcharinfo(0) + "]";
+ mes "Aaaaahhh!!!!!";
+ next;
+ mes "[Guitar Song]";
+ mes "What... what are you doing?!! What's wrong with you!";
+ mes "Security!!!";
+ next;
+ mes "[Black-suit Guards]";
+ mes "Please stop this.";
+ close2;
+ warp "comodo",117,98;
+ end;
}
- else {
- set .@scream_dc,rand(1,100);
- if (.@scream_dc > 80) {
- mes "- You get closer to Song's ear. -";
- next;
- mes "[" + strcharinfo(0) + "]";
- mes "Okay-";
- next;
- mes "[" + strcharinfo(0) + "]";
- mes "Oi-!!!!!";
- specialeffect EF_STUNATTACK;
- next;
- mes "[Guitar Song]";
- mes "Wh..what!! What are you doing?!?";
- mes "You almost damaged my eardrum.";
- emotion e_an;
- next;
- mes "[" + strcharinfo(0) + "]";
- mes "Hey, cheer up!!!";
- next;
- mes "[Guitar Song]";
- mes "What are you talking about?";
- next;
- mes "[" + strcharinfo(0) + "]";
- mes "You should know, people are addicted to your music?";
- mes "So many people are supporting you with anticipation.";
- mes "Would you break your promise and let people down? Not giving people any reason?";
- next;
- }
- else {
- mes "[" + strcharinfo(0) + "]";
- mes "Okay-";
- next;
- mes "[" + strcharinfo(0) + "]";
- mes "Aaaaahhh!!!!!";
- next;
- mes "[Guitar Song]";
- mes "What.. what are you doing?!! What's wrong with you!";
- mes "Security!!!";
- next;
- mes "[Black-suit Guards]";
- mes "Please stop this.";
- close2;
- warp "comodo",117,98;
- end;
- }
- }
+ break;
case 2:
if (getskilllv("BD_LULLABY") == 0) {
- mes "- You can't use this skill, since you didn't learn it. -";
+ mes "- You cannot use this skill without learning it. -";
close;
}
mes "[" + strcharinfo(0) + "]";
@@ -531,7 +422,7 @@ comodo,140,86,5 script Cheerless Maestro 479,{
close;
case 3:
if (getskilllv("DC_FORTUNEKISS") == 0) {
- mes "- You can't use this skill, since you didn't learn it. -";
+ mes "- You cannot use this skill without learning it. -";
close;
}
emotion e_what,1;
@@ -596,6 +487,7 @@ comodo,140,86,5 script Cheerless Maestro 479,{
mes "Then please tell me, I really love your music... but now I feel so blue...";
emotion e_what;
next;
+ break;
}
mes "[Guitar Song]";
mes "Oh, no! You know...";
@@ -640,14 +532,12 @@ comodo,140,86,5 script Cheerless Maestro 479,{
mes "Who can dance to my music so wonderfully as she did?";
mes "Now my music and my life is history... (muttering).";
close;
- }
- if ((job_wan > 3) && (job_wan < 8)) {
+ } else if (job_wan > 3 && job_wan < 8) {
mes "[Guitar Song]";
mes "Dancer Kim is probably addicted to the monster races in Hugel again!";
mes "Back in the day when she was addicted to the monster races, who do you think got her out of it?";
close;
- }
- if (job_wan == 8) {
+ } else if (job_wan == 8) {
emotion e_gasp;
mes "- You tell him what happened in Hugel and ask him to go back to Lutie. -";
next;
@@ -658,10 +548,9 @@ comodo,140,86,5 script Cheerless Maestro 479,{
next;
mes "[Guitar Song]";
mes "I'll go there right away and scold her.";
- set job_wan, 9;
+ set job_wan,9;
close;
- }
- if (job_wan == 9) {
+ } else if (job_wan == 9) {
mes "[Guitar Song]";
mes "Okay, I will go to the Christmas tree in Lutie where the performance is supposed to be held.";
close;
@@ -676,8 +565,7 @@ hu_in01,305,251,5 script Vacant Looking Lady#wnd 879,{
mes "[Vacant Looking Lady]";
mes "(blank...)";
close;
- }
- if (job_wan == 4) {
+ } else if (job_wan == 4) {
mes "[Vacant Looking Lady]";
mes "Sob... sob...";
next;
@@ -785,8 +673,7 @@ hu_in01,305,251,5 script Vacant Looking Lady#wnd 879,{
mes "<Nollio> is over! Boo hoo hoo!";
set job_wan,5;
close;
- }
- if (job_wan == 5) {
+ } else if (job_wan == 5) {
emotion e_sob;
mes "[Vacant Looking Lady]";
mes "Not long ago, I was like a beautiful dove, but now I am just a fat chicken.";
@@ -794,7 +681,7 @@ hu_in01,305,251,5 script Vacant Looking Lady#wnd 879,{
mes "I think the life of Wanderer Dancer Kim is over now.";
mes "Boo hoo hoo hoo!";
next;
- switch (select("Hey, don't give up.:I feel sorry for you.") == 2) {
+ if(select("Hey, don't give up.:I feel sorry for you.") == 2) {
mes "[Dancer Kim]";
mes "My life cannot get out of abyss now......";
close;
@@ -816,7 +703,7 @@ hu_in01,305,251,5 script Vacant Looking Lady#wnd 879,{
mes "But I get tired and give up easily.";
mes "I think I am going to give up.";
next;
- if (select("Well, there's no other way.:Let?s work together.") == 1) {
+ if(select("Well, there's no other way.:Let's work together.") == 1) {
mes "[Dancer Kim]";
mes "No dreams and no hope...";
close;
@@ -846,13 +733,11 @@ hu_in01,305,251,5 script Vacant Looking Lady#wnd 879,{
set job_wan,6;
changequest 2219,2220;
close;
- }
- if (job_wan == 6 || job_wan == 7) {
+ } else if (job_wan == 6 || job_wan == 7) {
mes "[Dancer Kim]";
mes "I'll meet you at Abyss Lake.";
close;
- }
- if (job_wan == 8) {
+ } else if (job_wan == 8) {
mes "[Dancer Kim]";
mes "Please tell Guitar Song to go to Lutie";
mes "I'll go there after I've packed my luggage!";
@@ -875,7 +760,7 @@ hu_fild05,342,130,5 script Dancer Kim#fild 879,{
mes "You need to defeat 50 Yellow Novus!";
mes "Are you ready?";
next;
- if (select("No.:Yes.") == 1) {
+ if(select("No.:Yes.") == 1) {
mes "[Dancer Kim]";
mes "Hurry up before I lose interest!";
close;
@@ -886,8 +771,7 @@ hu_fild05,342,130,5 script Dancer Kim#fild 879,{
set job_wan,7;
changequest 2220,2221;
close;
- }
- if (job_wan == 7) {
+ } else if (job_wan == 7) {
if (checkquest(2221,PLAYTIME) == 0 || checkquest(2221,PLAYTIME) == 1) {
if (checkquest(2221,HUNTING) == 2) {
mes "[Dancer Kim]";
@@ -921,20 +805,20 @@ hu_fild05,342,130,5 script Dancer Kim#fild 879,{
mes "Can you bring Guitar Song to Lutie?";
mes "Say that his partner is waiting for him.";
next;
- select("No Problem!");
+ select("No problem!");
mes "[Dancer Kim]";
mes "You're a good person. I'm really happy that I met you.";
mes "Thank god for sending such a stubborn person to me!";
set job_wan,8;
changequest 2221,2222;
close;
+ } else {
+ mes "[Dancer Kim]";
+ mes "Does it look easy to you?";
+ mes "But I'm sure I have a better chance to win.";
+ close;
}
- mes "[Dancer Kim]";
- mes "Does it look easy to you?";
- mes "But I'm sure I have a better chance to win.";
- close;
- }
- if (checkquest(2221,PLAYTIME) == 2) {
+ } else if (checkquest(2221,PLAYTIME) == 2) {
mes "[Dancer Kim]";
mes "Oh, you came back to me.";
mes "I'm so tired. I don't give up halfway. It's a good exercise for me. I will have to give up Nollio to another Wanderer, it's all over....";
@@ -943,15 +827,15 @@ hu_fild05,342,130,5 script Dancer Kim#fild 879,{
set job_wan,6;
changequest 2221,2220;
close;
+ } else {
+ mes "[Dancer Kim]";
+ mes "Huh...?";
+ set job_wan,6;
+ close;
}
+ } else if (job_wan == 8) {
mes "[Dancer Kim]";
- mes "Huh...?";
- set job_wan,6;
- close;
- }
- if (job_wan == 8) {
- mes "[Dancer Kim]";
- mes "Please tell Song, I will be waiting him at the Christmas tree.";
+ mes "Please tell Song, I will be waiting for him at the Christmas tree.";
close;
}
mes "[Dancer Kim]";
@@ -960,24 +844,22 @@ hu_fild05,342,130,5 script Dancer Kim#fild 879,{
}
- script #fildshout00::wandererjcq -1,{
- end;
-
OnTouch:
if (job_wan == 7) {
- set .@bc_rd,rand(1,3);
- if (.@bc_rd == 1) {
- mapannounce "hu_fild05","Dancer Kim: Hey, how did you get so fast? I've only got few myself...",bc_map,"0xffff00";
- }
- else if (.@bc_rd == 2) {
- mapannounce "hu_fild05","Dancer Kim: Errrgghh! Hey Novus! I'm gonna get you~",bc_map,"0xffff00";
- }
- else {
- mapannounce "hu_fild05","Dancer Kim: Oh, are you tired already? Is this my victory? Ho ho ho.",bc_map,"0xffff00";
+ switch(rand(3)) {
+ case 0:
+ mapannounce "hu_fild05","Dancer Kim: Hey, how did you get so fast? I've only got few myself...",bc_map,"0xffff00"; //FW_NORMAL 12 0 0
+ break;
+ case 1:
+ mapannounce "hu_fild05","Dancer Kim: Errrgghh! Hey Novus! I'm gonna get you~",bc_map,"0xffff00"; //FW_NORMAL 12 0 0
+ break;
+ case 2:
+ mapannounce "hu_fild05","Dancer Kim: Oh, are you tired already? Is this my victory? Ho ho ho.",bc_map,"0xffff00"; //FW_NORMAL 12 0 0
+ break;
}
}
end;
}
-
hu_fild05,81,111,0 duplicate(wandererjcq) #fildshout01 139,20,20
hu_fild05,193,98,0 duplicate(wandererjcq) #fildshout02 139,20,20
hu_fild05,252,74,0 duplicate(wandererjcq) #fildshout03 139,20,20
@@ -990,8 +872,6 @@ hu_fild05,80,239,0 duplicate(wandererjcq) #fildshout09 139,20,20
hu_fild05,69,147,0 duplicate(wandererjcq) #fildshout10 139,20,20
xmas,148,131,0 script #wandergogo 139,3,3,{
- end;
-
OnTouch:
if (job_wan == 9) {
enablenpc "Dancer Kim#xmas";
@@ -1008,16 +888,22 @@ OnTouch:
xmas,147,135,5 script Dancer Kim#xmas 485,{
if (job_wan == 9) {
- if ((Class != Job_Baby_Dancer) && (Class != Job_Dancer) && (Class != Job_Gypsy) && (BaseLevel != 99) && (JobLevel < 50)) {
- mes "- You don't meet the requirements. -";
+ if (BaseJob != Job_Dancer && BaseLevel < 99 && JobLevel < 50) {
+ mes "- You can't continue the quest because the condition for the quest is not appropriate. -";
+ close;
+ }
+ if (SkillPoint) {
+ mes "- You can't continue the quest because you have remaining skill points. -";
close;
}
- if (SkillPoint != 0) {
- mes "- Please use up all your skill points. -";
+ if (checkweight(1201,2) == 0) {
+ mes "- You need to empty your inventory if you want to continue the quest. -";
close;
}
- if (checkweight(1201,2) >= 2) {
- mes "- You need more room in your inventory before you can continue. -";
+ if (ismounting()) {
+ mes "[Dancer Kim]";
+ mes "Please get off of that creature you're riding on.";
+ mes "Then talk to me again.";
close;
}
mes "- <Nollio> is performing. -";
@@ -1094,15 +980,9 @@ xmas,147,135,5 script Dancer Kim#xmas 485,{
mes "Introducing!";
next;
mes "[Dancer Kim]";
- mapannounce "xmas","Dancer Kim: Introducing the rising Wanderer! " + strcharinfo(0) + "!",bc_map,"0xffff00";
+ mapannounce "xmas","Dancer Kim: Introducing the rising Wanderer! " + strcharinfo(0) + "!",bc_map,"0xffff00"; //FW_NORMAL 12 0 0
mes "This rising Wanderer star, " + strcharinfo(0) + "!";
- if(Class == Job_Baby_Dancer) {
- jobchange Job_Baby_Wanderer;
- }else if (Class == Job_Dancer) {
- jobchange Job_Wanderer;
- } else {
- jobchange Job_Wanderer_T;
- }
+ jobchange roclass(eaclass()|EAJL_THIRD);
set job_wan,10;
getitem 2795,1; //Green_Apple_Ring
getitem 5758,1; //Dying_Swan
@@ -1137,64 +1017,21 @@ xmas,147,135,5 script Dancer Kim#xmas 485,{
disablenpc "Mimi#xmas";
end;
}
-
OnInit:
disablenpc "Dancer Kim#xmas";
end;
}
-xmas,149,135,3 script Guitar Song#xmas 479,{
- end;
-
-OnInit:
- disablenpc "Guitar Song#xmas";
- end;
-}
-
-xmas,142,130,7 script Spectator#xmas1 711,{
- end;
-
-OnInit:
- disablenpc "Spectator#xmas1";
- end;
-}
-
-xmas,145,127,7 script Spectator#xmas2 712,{
+- script #wander_xmas -1,{
end;
-
OnInit:
- disablenpc "Spectator#xmas2";
+ disablenpc strnpcinfo(0);
end;
}
-
-xmas,148,127,7 script Soy#xmas 714,{
- end;
-
-OnInit:
- disablenpc "Soy#xmas";
- end;
-}
-
-xmas,149,127,1 script Mimi#xmas 714,{
- end;
-
-OnInit:
- disablenpc "Mimi#xmas";
- end;
-}
-
-xmas,151,127,1 script Spectator#xmas3 716,{
- end;
-
-OnInit:
- disablenpc "Spectator#xmas3";
- end;
-}
-
-xmas,154,129,1 script Spectator#xmas4 797,{
- end;
-
-OnInit:
- disablenpc "Spectator#xmas4";
- end;
-} \ No newline at end of file
+xmas,149,135,3 duplicate(#wander_xmas) Guitar Song#xmas 479
+xmas,142,130,7 duplicate(#wander_xmas) Spectator#xmas1 711
+xmas,145,127,7 duplicate(#wander_xmas) Spectator#xmas2 712
+xmas,148,127,7 duplicate(#wander_xmas) Soy#xmas 714
+xmas,149,127,1 duplicate(#wander_xmas) Mimi#xmas 714
+xmas,151,127,1 duplicate(#wander_xmas) Spectator#xmas3 716
+xmas,154,129,1 duplicate(#wander_xmas) Spectator#xmas4 797 \ No newline at end of file