summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
authoreuphyy <euphyy@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-07-30 23:59:10 +0000
committereuphyy <euphyy@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-07-30 23:59:10 +0000
commit1ce8bd7486059d05b3953d2412dc060f316a9e06 (patch)
treef370ab734779560f1388b4918ce439bc1d06c08b /npc
parentdc97ceb8baf6c646f16c5bed0064e5d136c1d768 (diff)
downloadhercules-1ce8bd7486059d05b3953d2412dc060f316a9e06.tar.gz
hercules-1ce8bd7486059d05b3953d2412dc060f316a9e06.tar.bz2
hercules-1ce8bd7486059d05b3953d2412dc060f316a9e06.tar.xz
hercules-1ce8bd7486059d05b3953d2412dc060f316a9e06.zip
* Fixed job level issues on remaining first class Platinum Skill quests, incl. bugreport:6374 (quests\skills\)
* Some optimization of Ranger job quest (re\jobs\3-1\ranger.txt) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16538 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'npc')
-rw-r--r--npc/pre-re/quests/skills/acolyte_skills.txt5
-rw-r--r--npc/pre-re/quests/skills/archer_skills.txt14
-rw-r--r--npc/pre-re/quests/skills/mage_skills.txt9
-rw-r--r--npc/pre-re/quests/skills/merchant_skills.txt9
-rw-r--r--npc/pre-re/quests/skills/swordman_skills.txt23
-rw-r--r--npc/re/jobs/3-1/ranger.txt760
-rw-r--r--npc/re/quests/skills/acolyte_skills.txt5
-rw-r--r--npc/re/quests/skills/archer_skills.txt14
-rw-r--r--npc/re/quests/skills/mage_skills.txt9
-rw-r--r--npc/re/quests/skills/merchant_skills.txt9
-rw-r--r--npc/re/quests/skills/swordman_skills.txt23
11 files changed, 122 insertions, 758 deletions
diff --git a/npc/pre-re/quests/skills/acolyte_skills.txt b/npc/pre-re/quests/skills/acolyte_skills.txt
index c6dd68f4e..2d797d714 100644
--- a/npc/pre-re/quests/skills/acolyte_skills.txt
+++ b/npc/pre-re/quests/skills/acolyte_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 1.7
+//= 1.8
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@@ -12,6 +12,7 @@
//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.6 Fixed a typo in job check. (Bugreport:1531) [L0ne_W0lf]
//= 1.7 Updated to latest available official file. [Masao]
+//= 1.8 Fixed JobLevel requirements. [Euphy]
//============================================================
prt_church,173,23,4 script Cleric 79,{
@@ -67,7 +68,7 @@ prt_church,173,23,4 script Cleric 79,{
mes "this skill for the work of good . .";
close;
}
- if ((countitem(727) > 0) && (countitem(991) > 0) && (countitem(2608) > 0) && (JobLevel > 29) && (BaseClass == Job_Acolyte)) {
+ if ((countitem(727) > 0) && (countitem(991) > 0) && (countitem(2608) > 0) && (JobLevel > 29 || (BaseJob == Job_Priest || BaseJob == Job_Monk)) && (BaseClass == Job_Acolyte)) {
mes "[Acolyte Klift]";
mes "Your faith has proven worthy";
mes "for you to gain the ' Holy Light ' skill.";
diff --git a/npc/pre-re/quests/skills/archer_skills.txt b/npc/pre-re/quests/skills/archer_skills.txt
index dd1233e56..0fbb4d270 100644
--- a/npc/pre-re/quests/skills/archer_skills.txt
+++ b/npc/pre-re/quests/skills/archer_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= rAthena dev team
//===== Current Version: =====================================
-//= 1.6
+//= 1.7
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@@ -12,6 +12,7 @@
//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.6 Updated to latest available official file.
//= also fixed Item issue [bugreport:5607]. [Masao]
+//= 1.7 Fixed JobLevel requirements. [Euphy]
//============================================================
moc_ruins,118,99,5 script Roberto 88,{
@@ -33,7 +34,7 @@ moc_ruins,118,99,5 script Roberto 88,{
mes "Then byebye~";
close;
}
- else if ((BaseClass == Job_Archer) && (JobLevel >= 30)) {
+ else if (JobLevel >= 30 || (BaseJob == Job_Hunter || BaseJob == Job_Bard || BaseJob == Job_Dancer)) {
mes "[Roberto]";
mes "Eh!";
mes " ";
@@ -130,10 +131,9 @@ moc_ruins,118,99,5 script Roberto 88,{
}
}
mes "[Roberto]";
- mes "Hmm... Do you?";
- mes "Have something to say?";
- mes "I,";
- mes "have nothing.";
+ mes "Hmm... Do you";
+ mes "have something to say?";
+ mes "I have nothing.";
mes "Difference in levels";
mes "cuts off conversations.";
close;
@@ -158,7 +158,7 @@ payon,103,63,3 script Jason 88,3,3,{
mes "Ehhhh... don't come any more ehh...";
close;
}
- else if (JobLevel >= 35) {
+ else if (JobLevel >= 35 || (BaseJob == Job_Hunter || BaseJob == Job_Bard || BaseJob == Job_Dancer)) {
mes "[Jason]";
mes "Darn... my wound isn't healing.";
mes "Bleh.. I was too careless... ";
diff --git a/npc/pre-re/quests/skills/mage_skills.txt b/npc/pre-re/quests/skills/mage_skills.txt
index cb141443d..2f9d124fa 100644
--- a/npc/pre-re/quests/skills/mage_skills.txt
+++ b/npc/pre-re/quests/skills/mage_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 1.7
+//= 1.8
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@@ -12,6 +12,7 @@
//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.6 Fixed a typo in job check. (Bugreport:1531) [L0ne_W0lf]
//= 1.7 Updated to latest available official file. [Masao]
+//= 1.8 Fixed JobLevel requirements. [Euphy]
//============================================================
geffen_in,151,119,4 script Great Wizard 64,{
@@ -21,7 +22,7 @@ geffen_in,151,119,4 script Great Wizard 64,{
mes "Look into yourself to discover";
mes "your hidden abilities !";
next;
- switch (select(" About mage's hidden ability :About skill ^3355FF' Energy Coat '^000000 :End conversation")) {
+ switch (select("About mage's hidden ability :About skill ^3355FF' Energy Coat '^000000 :End conversation")) {
case 1:
mes "[BLIZZARDRISS]";
mes "For many years";
@@ -92,7 +93,7 @@ geffen_in,151,119,4 script Great Wizard 64,{
mes "I have nothing more to teach you ...";
close;
}
- if ((countitem(746) > 2) && (countitem(730) > 0) && (countitem(935) > 4) && (countitem(943) > 0) && (JobLevel > 34) && (BaseClass == Job_Mage)) {
+ if ((countitem(746) > 2) && (countitem(730) > 0) && (countitem(935) > 4) && (countitem(943) > 0) && (JobLevel > 34 || (BaseJob == Job_Wizard || BaseJob == Job_Sage)) && (BaseClass == Job_Mage)) {
mes "[BLIZZARDRISS]";
mes "Okay, I have received your request.";
mes "I will now awaken your hidden energies . .";
@@ -138,7 +139,7 @@ geffen_in,151,119,4 script Great Wizard 64,{
mes "Didn't you listen to my explanation ? !";
mes "You have not prepared fully";
mes "for me to assist you.";
- mes "Check that you have me all the requirements";
+ mes "Check that you have all the requirements.";
next;
mes "[BLIZZARDRISS]";
mes "If you need me to explain";
diff --git a/npc/pre-re/quests/skills/merchant_skills.txt b/npc/pre-re/quests/skills/merchant_skills.txt
index 1fb202072..def5ec6aa 100644
--- a/npc/pre-re/quests/skills/merchant_skills.txt
+++ b/npc/pre-re/quests/skills/merchant_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 1.6
+//= 1.7
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@@ -12,6 +12,7 @@
//===== Additional Comments: =================================
//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.6 Updated to latest available official file. [Masao]
+//= 1.7 Fixed JobLevel requirements. [Euphy]
//============================================================
alberta,83,96,5 script Necko 98,7,7,{
@@ -61,7 +62,7 @@ alberta,83,96,5 script Necko 98,7,7,{
mes "Kyukwakakakakakakakakakaka!";
close;
}
- else if ((countitem(722) > 6) && (countitem(532) > 0) && (countitem(921) > 49) && (JobLevel >= 15)) {
+ else if ((countitem(722) > 6) && (countitem(532) > 0) && (countitem(921) > 49) && (JobLevel >= 15 || (BaseJob == Job_Blacksmith || BaseJob == Job_Alchemist))) {
mes "[Necko]";
mes "Oh! You!";
mes "You are qualified to learn how to shout!";
@@ -200,7 +201,7 @@ alberta,119,221,6 script Charlron 107,{
mes "Be healthy~";
close;
}
- else if (JobLevel >= 30) {
+ else if (JobLevel >= 30|| (BaseJob == Job_Blacksmith || BaseJob == Job_Alchemist)) {
mes "[Charlron]";
mes "Nice to see you fellow merchant";
mes "If I remember correctly,";
@@ -347,7 +348,7 @@ alberta,232,103,6 script Gershaun 57,{
mes "Here! Hurry!";
close;
}
- else if ((BaseClass == Job_Merchant) && (JobLevel >= 35)) {
+ else if (JobLevel >= 35 || (BaseJob == Job_Blacksmith || BaseJob == Job_Alchemist)) {
mes "[Gershaun]";
mes "Ooh. You have a firm body";
mes "for a merchant. You must be";
diff --git a/npc/pre-re/quests/skills/swordman_skills.txt b/npc/pre-re/quests/skills/swordman_skills.txt
index 31853bc8c..295291a16 100644
--- a/npc/pre-re/quests/skills/swordman_skills.txt
+++ b/npc/pre-re/quests/skills/swordman_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 1.7
+//= 1.8
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@@ -12,6 +12,7 @@
//===== Additional Comments: =================================
//= 1.6 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.7 Updated to latest available official file. [Masao]
+//= 1.8 Fixed JobLevel requirements. [Euphy]
//============================================================
izlude_in,175,130,2 script Knight De Thomas 98,4,4,{
@@ -90,13 +91,13 @@ izlude_in,175,130,2 script Knight De Thomas 98,4,4,{
next;
switch (select("Yes.:No, I'm not ready yet.")) {
case 1:
- if ((JobLevel > 34) && (countitem(713) > 199) && (countitem(1058) > 0)) {
+ if ((JobLevel > 34 || (BaseJob == Job_Knight || BaseJob == Job_Crusader)) && (countitem(713) > 199) && (countitem(1058) > 0)) {
mes "[De Thomas]";
mes "Let's see.....";
next;
mes "[De Thomas]";
mes "Ok! I shall now teach you...";
- mes "..The Body Movin' skill!";
+ mes "...The Body Movin' skill!";
next;
delitem 713,200; //Empty_Bottle
delitem 1058,1; //Wing_Of_Moth
@@ -110,12 +111,12 @@ izlude_in,175,130,2 script Knight De Thomas 98,4,4,{
mes "[De Thomas]";
mes "Oh yeah, I won't be needing your";
mes "armor so you can keep it.";
- mes "..Good luck now!";
+ mes "Good luck now!";
close;
}
- else if (JobLevel < 35) {
+ else if (JobLevel < 35 && (BaseJob != Job_Knight && BaseJob != Job_Crusader)) {
mes "[De Thomas]";
- mes "Wait a second your Job level isn't above ^00880035^000000!";
+ mes "Wait a second, your Job level isn't above ^00880035^000000!";
mes "Come back when it is.";
close;
}
@@ -150,7 +151,7 @@ izlude_in,175,130,2 script Knight De Thomas 98,4,4,{
prt_in,75,88,5 script Leon Von Frich 85,3,3,{
- if ((BaseClass == Job_Swordman) && (JobLevel >= 25)) {
+ if ((BaseClass == Job_Swordman) && (JobLevel >= 25 || (BaseJob == Job_Knight || BaseJob == Job_Crusader))) {
if (getskilllv("SM_FATALBLOW") == 1) {
mes "[Leon]";
mes "Eh?";
@@ -313,7 +314,7 @@ prt_in,94,57,3 script Juan 85,4,4,{
mes "You can do it.";
close;
}
- else if (JobLevel < 10) {
+ else if (JobLevel < 10 && (BaseJob != Job_Knight && BaseJob != Job_Crusader)) {
mes "[?]";
mes "What are you?";
mes "Eh, still a beginner.";
@@ -321,13 +322,13 @@ prt_in,94,57,3 script Juan 85,4,4,{
mes "before coming back.";
close;
}
- else if ((JobLevel > 10) && (JobLevel < 30)) {
+ else if (JobLevel < 30 && (BaseJob != Job_Knight && BaseJob != Job_Crusader)) {
mes "[Juan]";
mes "Oh, nice to meet you.";
mes "You can be on your way. (smiley~)";
close;
}
- else if ((countitem(924) > 34) && (countitem(958) > 9) && (countitem(957) > 9) && (countitem(518) > 9) && (JobLevel >= 30)) {
+ else if ((countitem(924) > 34) && (countitem(958) > 9) && (countitem(957) > 9) && (countitem(518) > 9)) {
mes "[Juan]";
mes "Ooh. Young swordsman!";
mes "You are ready to learn the";
@@ -336,7 +337,7 @@ prt_in,94,57,3 script Juan 85,4,4,{
switch (select("Hoho, I would like to learn it now.:What is that?")) {
case 1:
mes "[Juan]";
- mes "Ok. Then..";
+ mes "Ok. Then...";
next;
delitem 924,35; //Powder_Of_Butterfly
delitem 958,10; //Horrendous_Mouth
diff --git a/npc/re/jobs/3-1/ranger.txt b/npc/re/jobs/3-1/ranger.txt
index 0097853e6..ca4208d84 100644
--- a/npc/re/jobs/3-1/ranger.txt
+++ b/npc/re/jobs/3-1/ranger.txt
@@ -4,7 +4,7 @@
//= Masao
//= Credits: Muad_Dib
//===== Current Version: =====================================
-//= 1.3
+//= 1.4
//===== Compatible With: =====================================
//= Any rAthena SVN
//===== Description: =========================================
@@ -19,6 +19,7 @@
//= part until M_DESERT_WOLF_B Mercenary is fully working.
//= 1.3 Fixed waves not being announced and counted [Elias]
//= 1.3a Little beauty fix, changed break; to next; . [Masao]
+//= 1.4 Some optimization. [Euphy]
//============================================================
tur_dun01,156,36,5 script Survival Instructor#jr01 59,{
@@ -35,13 +36,10 @@ tur_dun01,156,36,5 script Survival Instructor#jr01 59,{
mes "The monsters here are a";
mes "little tough so be careful.";
next;
- switch(select("I came here to become a Ranger.:I just came to look around."))
+ if(select("I came here to become a Ranger.:I just came to look around.") == 2)
{
- case 1:
- break;
- case 2:
mes "[Survival Instructor, Rescue]";
- mes "Oh ya.?";
+ mes "Oh ya?";
mes "The weather is really great. Shall we take a picture to commemorate it?";
next;
mes "[Survival Instructor, Rescue]";
@@ -206,17 +204,14 @@ tur_dun01,156,36,5 script Survival Instructor#jr01 59,{
mes "Remember that you don't have any other equipment on, so be careful of the monsters.";
mes "Ready to start?";
next;
- switch(select("Wait a second:Yes, I'm ready"))
+ if(select("Wait a second:Yes, I'm ready") == 1)
{
- case 1:
mes "[Survival Instructor, Rescue]";
mes "What kind of preparation can be so long.";
next;
mes "[Survival Instructor, Rescue]";
mes "Come again when you are absolutely ready.";
close;
- case 2:
- break;
}
mes "[Survival Instructor, Rescue]";
mes "Well, then let's start.";
@@ -264,17 +259,14 @@ tur_dun01,156,36,5 script Survival Instructor#jr01 59,{
mes "As you don't have any equipment on, be careful of the monsters in the field.";
mes "Well, shall we start?";
next;
- switch(select("Wait a minute:I will start"))
+ if(select("Wait a minute:I will start") == 1)
{
- case 1:
mes "[Survival Instructor, Rescue]";
mes "What kind of preparation can be so long.";
next;
mes "[Survival Instructor, Rescue]";
mes "Come again when you are absolutely ready.";
close;
- case 2:
- break;
}
mes "[Survival Instructor, Rescue]";
mes "Okay, let's start.";
@@ -401,9 +393,8 @@ tur_dun01,91,169,3 script Test Instructor#jr02 732,{
mes "[Test Instructor, Teardrop]";
mes "That you are coming and going bugs me so, would you please stop?!";
next;
- switch(select("Ranger practical test building?:I came for the test."))
+ if(select("Ranger practical test building?:I came for the test.") == 1)
{
- case 1:
mes "[Test Instructor, Teardrop]";
mes "What, what are you...?";
next;
@@ -413,8 +404,6 @@ tur_dun01,91,169,3 script Test Instructor#jr02 732,{
mes "[Test Instructor, Teardrop]";
mes "How could you be a Ranger if you can't even recognize what's in front of you? Get out of here!";
close;
- case 2:
- break;
}
mes "[Test Instructor, Teardrop]";
mes "Ho, having come this far, it means you've passed the first survival test.";
@@ -821,14 +810,11 @@ tur_dun01,91,169,3 script Test Instructor#jr02 732,{
mes "Because you've disappeared suddenly, the Ranger Master was looking for you.";
mes "Dou you want to go to him now?";
next;
- switch(select("Don't go:Go"))
+ if(select("Don't go:Go") == 1)
{
- case 1:
mes "[Test Instructor, Teardrop]";
mes "Are you busy with something else?";
close;
- case 2:
- break;
}
mes "[Test Instructor, Teardrop]";
mes "Then I'll send you, please be well.";
@@ -912,11 +898,8 @@ job3_rang01,30,44,3 script Test Waiting Room#jr_03 88,{
mes "Please think about it again.";
mes "If you give up here, your job change request will be cancelled. Do you really want to give up the job change to a Ranger?";
next;
- switch(select("No, I'll continue with the test:I give up the Ranger job change"))
+ if(select("No, I'll continue with the test:I give up the Ranger job change") == 2)
{
- case 1:
- break;
- case 2:
mes "[Staff DTS]";
mes "You don't have as many guts as I thought.";
nude;
@@ -1063,6 +1046,10 @@ OnInit:
OnEnable:
set $@job_rang_point01,0;
+ set $@job_rang_text01,0;
+ setarray .text$[1],
+ "First","Second","Third","Fourth","Fifth","Sixth","Seventh","Eighth","Ninth","Tenth","Eleventh",
+ "Twelfth","Thirteenth","Fourteenth","Fifteenth","Sixteenth","Seventeenth","Eighteenth","Nineteenth","Last";
enablenpc "First Test Timer#jr_05";
initnpctimer;
end;
@@ -1072,206 +1059,55 @@ OnDisable:
disablenpc "First Test Timer#jr_05";
end;
-OnTimer3000:
- mapannounce "job3_rang02","Test Supervisor, Notice : First Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer8000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer10000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Second Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer15000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer17000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Third Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer22000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer24000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Fourth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer29000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer31000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Fifth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer36000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer38000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Sixth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer43000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer45000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Seventh Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer50000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer52000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Eight Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer57000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer59000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Nineth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer64000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer66000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Tenth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer71000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer73000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Eleventh Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer78000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer80000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Twelfth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer85000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer87000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Thirteenth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer92000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer94000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Fourteenth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer99000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer101000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Fifteenth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer106000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer108000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Sixteenth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer113000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer115000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Seventeenth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer120000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer122000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Eighteenth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer127000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
-OnTimer129000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Nineteenth Wave! Kill the Poring!",bc_map;
- donpcevent "Correct Monster Summon::OnStart";
- end;
-
OnTimer134000:
+OnTimer141000:
donpcevent "Correct Monster Summon::OnReset";
donpcevent "False Monster Summon::OnReset";
end;
+OnTimer3000:
+OnTimer10000:
+OnTimer17000:
+OnTimer24000:
+OnTimer31000:
+OnTimer38000:
+OnTimer45000:
+OnTimer52000:
+OnTimer59000:
+OnTimer66000:
+OnTimer73000:
+OnTimer80000:
+OnTimer87000:
+OnTimer94000:
+OnTimer101000:
+OnTimer108000:
+OnTimer115000:
+OnTimer122000:
+OnTimer129000:
OnTimer136000:
- mapannounce "job3_rang02","Test Supervisor, Notice : Last Wave! Kill the Poring!",bc_map;
+ set $@job_rang_text01,$@job_rang_text01+1;
+ mapannounce "job3_rang02","Test Supervisor, Notice : "+.text$[$@job_rang_text01]+" Wave! Kill the Poring!",bc_map;
donpcevent "Correct Monster Summon::OnStart";
end;
-OnTimer141000:
- donpcevent "Correct Monster Summon::OnReset";
- donpcevent "False Monster Summon::OnReset";
- end;
-
OnTimer143000:
mapannounce "job3_rang02","Test Supervisor, Notice : Well done! Now for your test result!",bc_map;
end;
@@ -1309,6 +1145,7 @@ OnTimer154000:
OnTimer157000:
mapwarp "job3_rang02","tur_dun01",93,165;
set $@job_rang_point01,0;
+ set $@job_rang_text01,0;
stopnpctimer;
donpcevent "Test Supervisor#jr_04::OnDisable";
donpcevent "Practical Test::OnEnable";
@@ -1323,135 +1160,13 @@ OnDisable:
end;
OnStart:
- set .@job_ranger_pattern01,rand(1,32);
- if (.@job_ranger_pattern01 == 1)
- {
- donpcevent "False Monster Summon::OnOne";
- monster "job3_rang02",35,58,"Poring",1002,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 2)
- {
- donpcevent "False Monster Summon::OnOne";
- monster "job3_rang02",35,58,"Poring",1031,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 3)
- {
- donpcevent "False Monster Summon::OnOne";
- monster "job3_rang02",35,58,"Poring",1242,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 4)
- {
- donpcevent "False Monster Summon::OnOne";
- monster "job3_rang02",35,58,"Poring",1113,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 5)
- {
- donpcevent "False Monster Summon::OnTwo";
- monster "job3_rang02",44,58,"Poring",1002,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 6)
- {
- donpcevent "False Monster Summon::OnTwo";
- monster "job3_rang02",44,58,"Poring",1031,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 7)
- {
- donpcevent "False Monster Summon::OnTwo";
- monster "job3_rang02",44,58,"Poring",1242,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 8)
- {
- donpcevent "False Monster Summon::OnTwo";
- monster "job3_rang02",44,58,"Poring",1113,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 9)
- {
- donpcevent "False Monster Summon::OnThree";
- monster "job3_rang02",54,58,"Poring",1002,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 10)
- {
- donpcevent "False Monster Summon::OnThree";
- monster "job3_rang02",54,58,"Poring",1031,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 11)
- {
- donpcevent "False Monster Summon::OnThree";
- monster "job3_rang02",54,58,"Poring",1242,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 12)
- {
- donpcevent "False Monster Summon::OnThree";
- monster "job3_rang02",54,58,"Poring",1113,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 13)
- {
- donpcevent "False Monster Summon::OnFour";
- monster "job3_rang02",35,49,"Poring",1002,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 14)
- {
- donpcevent "False Monster Summon::OnFour";
- monster "job3_rang02",35,49,"Poring",1031,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 15)
- {
- donpcevent "False Monster Summon::OnFour";
- monster "job3_rang02",35,49,"Poring",1242,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 16)
- {
- donpcevent "False Monster Summon::OnFour";
- monster "job3_rang02",35,49,"Poring",1113,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 17)
- {
- donpcevent "False Monster Summon::OnFive";
- monster "job3_rang02",54,49,"Poring",1002,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 18)
- {
- donpcevent "False Monster Summon::OnFive";
- monster "job3_rang02",54,49,"Poring",1031,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 19)
- {
- donpcevent "False Monster Summon::OnFive";
- monster "job3_rang02",54,49,"Poring",1242,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 20)
- {
- donpcevent "False Monster Summon::OnFive";
- monster "job3_rang02",54,49,"Poring",1031,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 21)
- {
- donpcevent "False Monster Summon::OnSix";
- monster "job3_rang02",35,39,"Poring",1002,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 22)
- {
- donpcevent "False Monster Summon::OnSix";
- monster "job3_rang02",35,39,"Poring",1031,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 23)
- {
- donpcevent "False Monster Summon::OnSix";
- monster "job3_rang02",35,39,"Poring",1242,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 24)
- {
- donpcevent "False Monster Summon::OnSix";
- monster "job3_rang02",35,39,"Poring",1113,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 25)
- {
- donpcevent "False Monster Summon::OnSeven";
- monster "job3_rang02",44,39,"Poring",1002,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 26)
- {
- donpcevent "False Monster Summon::OnSeven";
- monster "job3_rang02",44,39,"Poring",1031,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 27)
- {
- donpcevent "False Monster Summon::OnSeven";
- monster "job3_rang02",44,39,"Poring",1242,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 28)
- {
- donpcevent "False Monster Summon::OnSeven";
- monster "job3_rang02",44,39,"Poring",1113,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 29)
- {
- donpcevent "False Monster Summon::OnEight";
- monster "job3_rang02",54,39,"Poring",1002,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 30)
- {
- donpcevent "False Monster Summon::OnEight";
- monster "job3_rang02",54,39,"Poring",1031,1,"Correct Monster Summon::OnMyMobDead";
- }else if (.@job_ranger_pattern01 == 31)
- {
- donpcevent "False Monster Summon::OnEight";
- monster "job3_rang02",54,39,"Poring",1242,1,"Correct Monster Summon::OnMyMobDead";
- }else {
- donpcevent "False Monster Summon::OnEight";
- monster "job3_rang02",54,39,"Poring",1113,1,"Correct Monster Summon::OnMyMobDead";
- }
+ setarray .@job_ranger_n01$[0],"OnOne","OnTwo","OnThree","OnFour","OnFive","OnSix","OnSeven","OnEight";
+ setarray .@job_ranger_lx01[0],35,44,54,35,54,35,44,54;
+ setarray .@job_ranger_ly01[0],58,58,58,49,49,39,39,39;
+ setarray .@job_ranger_lm01[0],1002,1031,1242,1113;
+ set .@i, rand(8);
+ donpcevent "False Monster Summon::"+.@job_ranger_n01$[.@i];
+ monster "job3_rang02",.@job_ranger_lx01[.@i],.@job_ranger_ly01[.@i],"Poring",.@job_ranger_lm01[rand(4)],1,"Correct Monster Summon::OnMyMobDead";
end;
OnReset:
@@ -1670,7 +1385,7 @@ OnTimer209000:
end;
OnTimer210000:
- mapannounce "job3_rang02","Test Supervisor, Caution : Ugh.. What are you doing? Your time is up!",bc_map;
+ mapannounce "job3_rang02","Test Supervisor, Caution : Ugh... What are you doing? Your time is up!",bc_map;
end;
OnTimer213000:
@@ -1953,305 +1668,39 @@ OnTimer9000:
OnTimer12000:
mapannounce "job3_rang02","Test Supervisor, Freeze : The 'Egg Bombs' will spawn 20 times! Each time you successfully dismantle one, you get 1 point! If you get 10 ore more points, you pass the preactical test, so go for it! Then I'll start!!!!!",bc_map;
+ set .n,14;
end;
OnTimer15000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger14::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger15::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger16::OnEnable";
- }
- end;
-
OnTimer20000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger17::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger18::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger19::OnEnable";
- }
- end;
-
OnTimer25000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger20::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger21::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger22::OnEnable";
- }
- end;
-
OnTimer30000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger23::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger24::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger25::OnEnable";
- }
- end;
-
OnTimer35000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger26::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger27::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger28::OnEnable";
- }
- end;
-
OnTimer40000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger14::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger15::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger16::OnEnable";
- }
- end;
-
OnTimer45000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger17::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger18::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger19::OnEnable";
- }
- end;
-
OnTimer50000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger20::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger21::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger22::OnEnable";
- }
- end;
-
OnTimer55000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger23::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger24::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger25::OnEnable";
- }
- end;
-
OnTimer60000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger26::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger27::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger28::OnEnable";
- }
- end;
-
OnTimer65000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger14::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger15::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger16::OnEnable";
- }
- end;
-
OnTimer70000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger17::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger18::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger19::OnEnable";
- }
- end;
-
OnTimer75000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger20::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger21::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger22::OnEnable";
- }
- end;
-
OnTimer80000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger23::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger24::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger25::OnEnable";
- }
- end;
-
OnTimer85000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger26::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger27::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger28::OnEnable";
- }
- end;
-
OnTimer90000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger14::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger15::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger16::OnEnable";
- }
- end;
-
OnTimer95000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger17::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger18::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger19::OnEnable";
- }
- end;
-
OnTimer100000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger20::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger21::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger22::OnEnable";
- }
- end;
-
OnTimer105000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger23::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger24::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger25::OnEnable";
- }
- end;
-
OnTimer110000:
- set .@rand,rand(1,3);
- if (.@rand == 1)
- {
- donpcevent "Egg Bomb#job_ranger26::OnEnable";
- }else if (.@rand == 2)
- {
- donpcevent "Egg Bomb#job_ranger27::OnEnable";
- }else
- {
- donpcevent "Egg Bomb#job_ranger28::OnEnable";
- }
+ donpcevent "Egg Bomb#job_ranger"+(.n+rand(3))+"::OnEnable";
+ if (.n == 26) set .n,14;
+ else set .n, .n+3;
end;
OnTimer113000:
mapannounce "job3_rang02","Test Supervisor, Freeze : The test is ooooooooooooooveeeeerrr!!!!!!!!!!!!!!!!!!!!!!!!!!",bc_map;
- donpcevent "Egg Bomb#job_ranger14::OnDisable";
- donpcevent "Egg Bomb#job_ranger15::OnDisable";
- donpcevent "Egg Bomb#job_ranger16::OnDisable";
- donpcevent "Egg Bomb#job_ranger17::OnDisable";
- donpcevent "Egg Bomb#job_ranger18::OnDisable";
- donpcevent "Egg Bomb#job_ranger19::OnDisable";
- donpcevent "Egg Bomb#job_ranger20::OnDisable";
- donpcevent "Egg Bomb#job_ranger21::OnDisable";
- donpcevent "Egg Bomb#job_ranger22::OnDisable";
- donpcevent "Egg Bomb#job_ranger23::OnDisable";
- donpcevent "Egg Bomb#job_ranger24::OnDisable";
- donpcevent "Egg Bomb#job_ranger25::OnDisable";
- donpcevent "Egg Bomb#job_ranger26::OnDisable";
- donpcevent "Egg Bomb#job_ranger27::OnDisable";
- donpcevent "Egg Bomb#job_ranger28::OnDisable";
+ for(set .@i,14; .@i<29; set .@i,.@i+1)
+ donpcevent "Egg Bomb#job_ranger"+.@i+"::OnDisable";
+ set .n,0;
end;
OnTimer116000:
@@ -2994,44 +2443,16 @@ job3_rang01,90,43,3 script Ranger Master#jr_29 832,{
mes "Okay, before you really change the job into a ranger, I'll ask you on more time.";
mes "Do you really want to become a ranger?";
next;
- switch(select("No:Yes!"))
+ if(select("No:Yes!") == 1)
{
- case 1:
mes "[Ranger Master, Neveragain]";
mes "Umm? That's not the answer that I was waiting for...";
next;
mes "[Ranger Master, Neveragain]";
mes "Even after passing through all the rough practical tests, you don't want to become a ranger... are you sure?";
close;
- case 2:
- break;
- }
- if(Class == Job_Baby_Hunter){
- mes "[Ranger Master, Neveragain]";
- mes "Your firm answer seems very trustworthy!";
- next;
- nude;
- if (countitem(1703) > 0)
- {
- mes "[Ranger Master, Neveragain]";
- mes "From now on be active as a splendid Ranger!";
- mes "I wish you luck in your future!";
- delitem 1703,1;
- set job_ranger01,7;
- completequest 8262;
- jobchange Job_Baby_Ranger;
- getitem 5748,1;
- getitem 2795,1;
- getitem 6124,1;
- close;
- }
- mes "[Ranger Master, Neveragain]";
- mes "...However,";
- mes "You have to return your test items.";
- mes "What did you do with your testing Bow?";
- close;
}
- else if (Class == Job_Hunter)
+ if (Class == Job_Hunter || Class == Job_Sniper || Job_Baby_Hunter)
{
mes "[Ranger Master, Neveragain]";
mes "Your firm answer seems very trustworthy!";
@@ -3045,32 +2466,7 @@ job3_rang01,90,43,3 script Ranger Master#jr_29 832,{
delitem 1703,1;
set job_ranger01,7;
completequest 8262;
- jobchange Job_Ranger;
- getitem 5748,1;
- getitem 2795,1;
- getitem 6124,1;
- close;
- }
- mes "[Ranger Master, Neveragain]";
- mes "...However,";
- mes "You have to return your test items.";
- mes "What did you do with your testing Bow?";
- close;
- }else if (Class == Job_Sniper)
- {
- mes "[Ranger Master, Neveragain]";
- mes "Your firm answer seems very trustworthy!";
- next;
- nude;
- if (countitem(1703) > 0)
- {
- mes "[Ranger Master, Neveragain]";
- mes "From now on be active as a splendid Ranger!";
- mes "I wish you luck in your future!";
- delitem 1703,1;
- set job_ranger01,7;
- completequest 8262;
- jobchange Job_Ranger_T;
+ jobchange roclass(eaclass()|EAJL_THIRD);
getitem 5748,1;
getitem 2795,1;
getitem 6124,1;
@@ -3104,15 +2500,13 @@ job3_rang01,90,43,3 script Ranger Master#jr_29 832,{
warp "alberta",117,57;
end;
}
- }else if (job_ranger01 > 6)
- {
+ }else{
mes "[Ranger Master, Neveragain]";
mes "Hey, you look great.";
mes "What are you doing here?";
next;
- switch(select("I just came by:Please let me be out"))
+ if(select("I just came by:Please let me be out") == 1)
{
- case 1:
mes "[Ranger Master, Neveragain]";
mes "Well, there's nothing to see and you came.";
next;
@@ -3120,8 +2514,6 @@ job3_rang01,90,43,3 script Ranger Master#jr_29 832,{
mes "Take a rest as long as you want.";
mes "It's the place where you can have a tea easily.";
close;
- case 2:
- break;
}
mes "[Ranger Master, Neveragain]";
mes "It was good to see you.";
@@ -3130,29 +2522,6 @@ job3_rang01,90,43,3 script Ranger Master#jr_29 832,{
warp "alberta",117,57;
end;
}
- mes "[Ranger Master, Neveragain]";
- mes "Hey, you look great.";
- mes "What are you doing here?";
- next;
- switch(select("I just came by:Please let me be out"))
- {
- case 1:
- mes "[Ranger Master, Neveragain]";
- mes "Well, there's nothing to see and you came.";
- next;
- mes "[Ranger Master, Neveragain]";
- mes "Take a rest as long as you want.";
- mes "It's the place where you can have a tea easily.";
- close;
- case 2:
- break;
- }
- mes "[Ranger Master, Neveragain]";
- mes "It was good to see you.";
- mes "Don't lose the dignity as a Ranger wherever you go.";
- close2;
- warp "alberta",117,57;
- end;
}
job3_rang01,58,1,0 script Test#job_ranger 88,{
@@ -3195,21 +2564,8 @@ job3_rang01,58,1,0 script Test#job_ranger 88,{
case 8:
mes "3rd Test has been Disabled";
donpcevent "Third Test Timer#jr_12::OnDisable";
- donpcevent "Egg Bomb#job_ranger14::OnDisable";
- donpcevent "Egg Bomb#job_ranger15::OnDisable";
- donpcevent "Egg Bomb#job_ranger16::OnDisable";
- donpcevent "Egg Bomb#job_ranger17::OnDisable";
- donpcevent "Egg Bomb#job_ranger18::OnDisable";
- donpcevent "Egg Bomb#job_ranger19::OnDisable";
- donpcevent "Egg Bomb#job_ranger20::OnDisable";
- donpcevent "Egg Bomb#job_ranger21::OnDisable";
- donpcevent "Egg Bomb#job_ranger22::OnDisable";
- donpcevent "Egg Bomb#job_ranger23::OnDisable";
- donpcevent "Egg Bomb#job_ranger24::OnDisable";
- donpcevent "Egg Bomb#job_ranger25::OnDisable";
- donpcevent "Egg Bomb#job_ranger26::OnDisable";
- donpcevent "Egg Bomb#job_ranger27::OnDisable";
- donpcevent "Egg Bomb#job_ranger28::OnDisable";
+ for(set .@i,14; .@i<29; set .@i,.@i+1)
+ donpcevent "Egg Bomb#job_ranger"+.@i+"::OnDisable";
close;
case 9:
close;
diff --git a/npc/re/quests/skills/acolyte_skills.txt b/npc/re/quests/skills/acolyte_skills.txt
index c6dd68f4e..2d797d714 100644
--- a/npc/re/quests/skills/acolyte_skills.txt
+++ b/npc/re/quests/skills/acolyte_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 1.7
+//= 1.8
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@@ -12,6 +12,7 @@
//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.6 Fixed a typo in job check. (Bugreport:1531) [L0ne_W0lf]
//= 1.7 Updated to latest available official file. [Masao]
+//= 1.8 Fixed JobLevel requirements. [Euphy]
//============================================================
prt_church,173,23,4 script Cleric 79,{
@@ -67,7 +68,7 @@ prt_church,173,23,4 script Cleric 79,{
mes "this skill for the work of good . .";
close;
}
- if ((countitem(727) > 0) && (countitem(991) > 0) && (countitem(2608) > 0) && (JobLevel > 29) && (BaseClass == Job_Acolyte)) {
+ if ((countitem(727) > 0) && (countitem(991) > 0) && (countitem(2608) > 0) && (JobLevel > 29 || (BaseJob == Job_Priest || BaseJob == Job_Monk)) && (BaseClass == Job_Acolyte)) {
mes "[Acolyte Klift]";
mes "Your faith has proven worthy";
mes "for you to gain the ' Holy Light ' skill.";
diff --git a/npc/re/quests/skills/archer_skills.txt b/npc/re/quests/skills/archer_skills.txt
index dd1233e56..0fbb4d270 100644
--- a/npc/re/quests/skills/archer_skills.txt
+++ b/npc/re/quests/skills/archer_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= rAthena dev team
//===== Current Version: =====================================
-//= 1.6
+//= 1.7
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@@ -12,6 +12,7 @@
//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.6 Updated to latest available official file.
//= also fixed Item issue [bugreport:5607]. [Masao]
+//= 1.7 Fixed JobLevel requirements. [Euphy]
//============================================================
moc_ruins,118,99,5 script Roberto 88,{
@@ -33,7 +34,7 @@ moc_ruins,118,99,5 script Roberto 88,{
mes "Then byebye~";
close;
}
- else if ((BaseClass == Job_Archer) && (JobLevel >= 30)) {
+ else if (JobLevel >= 30 || (BaseJob == Job_Hunter || BaseJob == Job_Bard || BaseJob == Job_Dancer)) {
mes "[Roberto]";
mes "Eh!";
mes " ";
@@ -130,10 +131,9 @@ moc_ruins,118,99,5 script Roberto 88,{
}
}
mes "[Roberto]";
- mes "Hmm... Do you?";
- mes "Have something to say?";
- mes "I,";
- mes "have nothing.";
+ mes "Hmm... Do you";
+ mes "have something to say?";
+ mes "I have nothing.";
mes "Difference in levels";
mes "cuts off conversations.";
close;
@@ -158,7 +158,7 @@ payon,103,63,3 script Jason 88,3,3,{
mes "Ehhhh... don't come any more ehh...";
close;
}
- else if (JobLevel >= 35) {
+ else if (JobLevel >= 35 || (BaseJob == Job_Hunter || BaseJob == Job_Bard || BaseJob == Job_Dancer)) {
mes "[Jason]";
mes "Darn... my wound isn't healing.";
mes "Bleh.. I was too careless... ";
diff --git a/npc/re/quests/skills/mage_skills.txt b/npc/re/quests/skills/mage_skills.txt
index cb141443d..2f9d124fa 100644
--- a/npc/re/quests/skills/mage_skills.txt
+++ b/npc/re/quests/skills/mage_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 1.7
+//= 1.8
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@@ -12,6 +12,7 @@
//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.6 Fixed a typo in job check. (Bugreport:1531) [L0ne_W0lf]
//= 1.7 Updated to latest available official file. [Masao]
+//= 1.8 Fixed JobLevel requirements. [Euphy]
//============================================================
geffen_in,151,119,4 script Great Wizard 64,{
@@ -21,7 +22,7 @@ geffen_in,151,119,4 script Great Wizard 64,{
mes "Look into yourself to discover";
mes "your hidden abilities !";
next;
- switch (select(" About mage's hidden ability :About skill ^3355FF' Energy Coat '^000000 :End conversation")) {
+ switch (select("About mage's hidden ability :About skill ^3355FF' Energy Coat '^000000 :End conversation")) {
case 1:
mes "[BLIZZARDRISS]";
mes "For many years";
@@ -92,7 +93,7 @@ geffen_in,151,119,4 script Great Wizard 64,{
mes "I have nothing more to teach you ...";
close;
}
- if ((countitem(746) > 2) && (countitem(730) > 0) && (countitem(935) > 4) && (countitem(943) > 0) && (JobLevel > 34) && (BaseClass == Job_Mage)) {
+ if ((countitem(746) > 2) && (countitem(730) > 0) && (countitem(935) > 4) && (countitem(943) > 0) && (JobLevel > 34 || (BaseJob == Job_Wizard || BaseJob == Job_Sage)) && (BaseClass == Job_Mage)) {
mes "[BLIZZARDRISS]";
mes "Okay, I have received your request.";
mes "I will now awaken your hidden energies . .";
@@ -138,7 +139,7 @@ geffen_in,151,119,4 script Great Wizard 64,{
mes "Didn't you listen to my explanation ? !";
mes "You have not prepared fully";
mes "for me to assist you.";
- mes "Check that you have me all the requirements";
+ mes "Check that you have all the requirements.";
next;
mes "[BLIZZARDRISS]";
mes "If you need me to explain";
diff --git a/npc/re/quests/skills/merchant_skills.txt b/npc/re/quests/skills/merchant_skills.txt
index 1fb202072..def5ec6aa 100644
--- a/npc/re/quests/skills/merchant_skills.txt
+++ b/npc/re/quests/skills/merchant_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 1.6
+//= 1.7
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@@ -12,6 +12,7 @@
//===== Additional Comments: =================================
//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.6 Updated to latest available official file. [Masao]
+//= 1.7 Fixed JobLevel requirements. [Euphy]
//============================================================
alberta,83,96,5 script Necko 98,7,7,{
@@ -61,7 +62,7 @@ alberta,83,96,5 script Necko 98,7,7,{
mes "Kyukwakakakakakakakakakaka!";
close;
}
- else if ((countitem(722) > 6) && (countitem(532) > 0) && (countitem(921) > 49) && (JobLevel >= 15)) {
+ else if ((countitem(722) > 6) && (countitem(532) > 0) && (countitem(921) > 49) && (JobLevel >= 15 || (BaseJob == Job_Blacksmith || BaseJob == Job_Alchemist))) {
mes "[Necko]";
mes "Oh! You!";
mes "You are qualified to learn how to shout!";
@@ -200,7 +201,7 @@ alberta,119,221,6 script Charlron 107,{
mes "Be healthy~";
close;
}
- else if (JobLevel >= 30) {
+ else if (JobLevel >= 30|| (BaseJob == Job_Blacksmith || BaseJob == Job_Alchemist)) {
mes "[Charlron]";
mes "Nice to see you fellow merchant";
mes "If I remember correctly,";
@@ -347,7 +348,7 @@ alberta,232,103,6 script Gershaun 57,{
mes "Here! Hurry!";
close;
}
- else if ((BaseClass == Job_Merchant) && (JobLevel >= 35)) {
+ else if (JobLevel >= 35 || (BaseJob == Job_Blacksmith || BaseJob == Job_Alchemist)) {
mes "[Gershaun]";
mes "Ooh. You have a firm body";
mes "for a merchant. You must be";
diff --git a/npc/re/quests/skills/swordman_skills.txt b/npc/re/quests/skills/swordman_skills.txt
index 31853bc8c..295291a16 100644
--- a/npc/re/quests/skills/swordman_skills.txt
+++ b/npc/re/quests/skills/swordman_skills.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 1.7
+//= 1.8
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
@@ -12,6 +12,7 @@
//===== Additional Comments: =================================
//= 1.6 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
//= 1.7 Updated to latest available official file. [Masao]
+//= 1.8 Fixed JobLevel requirements. [Euphy]
//============================================================
izlude_in,175,130,2 script Knight De Thomas 98,4,4,{
@@ -90,13 +91,13 @@ izlude_in,175,130,2 script Knight De Thomas 98,4,4,{
next;
switch (select("Yes.:No, I'm not ready yet.")) {
case 1:
- if ((JobLevel > 34) && (countitem(713) > 199) && (countitem(1058) > 0)) {
+ if ((JobLevel > 34 || (BaseJob == Job_Knight || BaseJob == Job_Crusader)) && (countitem(713) > 199) && (countitem(1058) > 0)) {
mes "[De Thomas]";
mes "Let's see.....";
next;
mes "[De Thomas]";
mes "Ok! I shall now teach you...";
- mes "..The Body Movin' skill!";
+ mes "...The Body Movin' skill!";
next;
delitem 713,200; //Empty_Bottle
delitem 1058,1; //Wing_Of_Moth
@@ -110,12 +111,12 @@ izlude_in,175,130,2 script Knight De Thomas 98,4,4,{
mes "[De Thomas]";
mes "Oh yeah, I won't be needing your";
mes "armor so you can keep it.";
- mes "..Good luck now!";
+ mes "Good luck now!";
close;
}
- else if (JobLevel < 35) {
+ else if (JobLevel < 35 && (BaseJob != Job_Knight && BaseJob != Job_Crusader)) {
mes "[De Thomas]";
- mes "Wait a second your Job level isn't above ^00880035^000000!";
+ mes "Wait a second, your Job level isn't above ^00880035^000000!";
mes "Come back when it is.";
close;
}
@@ -150,7 +151,7 @@ izlude_in,175,130,2 script Knight De Thomas 98,4,4,{
prt_in,75,88,5 script Leon Von Frich 85,3,3,{
- if ((BaseClass == Job_Swordman) && (JobLevel >= 25)) {
+ if ((BaseClass == Job_Swordman) && (JobLevel >= 25 || (BaseJob == Job_Knight || BaseJob == Job_Crusader))) {
if (getskilllv("SM_FATALBLOW") == 1) {
mes "[Leon]";
mes "Eh?";
@@ -313,7 +314,7 @@ prt_in,94,57,3 script Juan 85,4,4,{
mes "You can do it.";
close;
}
- else if (JobLevel < 10) {
+ else if (JobLevel < 10 && (BaseJob != Job_Knight && BaseJob != Job_Crusader)) {
mes "[?]";
mes "What are you?";
mes "Eh, still a beginner.";
@@ -321,13 +322,13 @@ prt_in,94,57,3 script Juan 85,4,4,{
mes "before coming back.";
close;
}
- else if ((JobLevel > 10) && (JobLevel < 30)) {
+ else if (JobLevel < 30 && (BaseJob != Job_Knight && BaseJob != Job_Crusader)) {
mes "[Juan]";
mes "Oh, nice to meet you.";
mes "You can be on your way. (smiley~)";
close;
}
- else if ((countitem(924) > 34) && (countitem(958) > 9) && (countitem(957) > 9) && (countitem(518) > 9) && (JobLevel >= 30)) {
+ else if ((countitem(924) > 34) && (countitem(958) > 9) && (countitem(957) > 9) && (countitem(518) > 9)) {
mes "[Juan]";
mes "Ooh. Young swordsman!";
mes "You are ready to learn the";
@@ -336,7 +337,7 @@ prt_in,94,57,3 script Juan 85,4,4,{
switch (select("Hoho, I would like to learn it now.:What is that?")) {
case 1:
mes "[Juan]";
- mes "Ok. Then..";
+ mes "Ok. Then...";
next;
delitem 924,35; //Powder_Of_Butterfly
delitem 958,10; //Horrendous_Mouth