summaryrefslogtreecommitdiff
path: root/npc/quests/first_class/tu_acolyte.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/quests/first_class/tu_acolyte.txt')
-rw-r--r--npc/quests/first_class/tu_acolyte.txt225
1 files changed, 138 insertions, 87 deletions
diff --git a/npc/quests/first_class/tu_acolyte.txt b/npc/quests/first_class/tu_acolyte.txt
index edd9b05c5..854b0a26a 100644
--- a/npc/quests/first_class/tu_acolyte.txt
+++ b/npc/quests/first_class/tu_acolyte.txt
@@ -1,30 +1,31 @@
//===== Hercules Script ======================================
//= Acolyte Class Tutorial and Job Specific Quest
-//===== By: ==================================================
+//===== By: ==================================================
//= Fix up by Jukka
-//===== Current Version: =====================================
-//= 1.6a
-//===== Compatible With: =====================================
-//= Hercules
-//===== Description: =========================================
-//= Tutorial for Acolyte Class
-//===== Additional Comments: =================================
+//===== Current Version: =====================================
+//= 1.9
+//===== Description: =========================================
+//= [Official Conversion]
+//= Acolyte training quest.
+//===== Additional Comments: =================================
//= 1.0 Fully working
//= 1.1 optimized [Lupus]
-//= TODO: Test, Add correct misceffects numbers
//= 1.2 Fixed experience gains to match upcoming rate adjustments. [SinSloth]
//= 1.3 Fixed bad NPC header data to comply with rev. 11603. [L0ne_W0lf]
//= 1.4 Misc. updates. [L0ne_W0lf]
//= 1.5 Adjusted EXP gains to Renewal values.
//= 1.6 Fixed a wrong placed curly bracket. [Joseph]
//= 1.6a Added 'npcskill' command. [Euphy]
-//============================================================
+//= 1.7 Fixed exp, texts, and requirements in pre-renewal [Daegaladh]
+//= 1.8 Updated to match the official script. [Euphy]
+//= 1.9 Added GM management function. [Euphy]
+//============================================================
// Priest Praupin
//============================================================
-prt_church,179,15,1 script Priest Praupin 110,{
+prt_church,179,15,1 script Priest Praupin 4_M_MINISTER,{
mes "[Priest Praupin]";
- if(BaseClass != Job_Acolyte){
+ if(BaseJob != Job_Acolyte){
if(tu_acolyte01 == 25){
mes "Oh...!";
mes "You're "+strcharinfo(0)+" !";
@@ -173,7 +174,7 @@ prt_church,179,15,1 script Priest Praupin 110,{
// Asthe
//============================================================
-prt_monk,230,106,3 script Asthe#tu 79,{
+prt_monk,230,106,3 script Asthe#tu 1_F_PRIEST,{
mes "[Asthe]";
switch(tu_acolyte01){
case 1:
@@ -246,7 +247,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{
mes "is the most necessary";
mes "skill for an Acolyte?";
next;
- switch(select("Heal:Aqua Benedicta:Teleport")){
+ switch(select("Heal:Aqua Benedicta:Teleport")){
case 1:
mes "[Asthe]";
mes "Ah, yes.";
@@ -290,10 +291,10 @@ prt_monk,230,106,3 script Asthe#tu 79,{
next;
mes "[Asthe]";
mes "HEAL !!";
- npcskill "AL_HEAL",10,99,60;
+ npcskill "AL_HEAL",11,99,60;
set tu_acolyte01, 3;
if(getskilllv("AL_HEAL") == 0){
- getexp 0,10;
+ getexp 0,100;
specialeffect2 EF_CONE;
}
close;
@@ -381,12 +382,15 @@ prt_monk,230,106,3 script Asthe#tu 79,{
emotion e_heh;
set tu_acolyte01, 5;
delitem 1504, 1; //Mace
- if(Class == Job_Acolyte_High)
- getexp 200,100;
- else
- getexp 100,50;
- specialeffect2 EF_CONE;
- close;
+ if(Class == Job_Acolyte_High) {
+ getexp 2000,1000;
+ specialeffect2 EF_CONE;
+ close;
+ } else {
+ getexp 1000,500;
+ specialeffect2 EF_CONE;
+ close;
+ }
} else {
mes "Oh my!";
mes "Welcome back~";
@@ -395,7 +399,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{
next;
mes "[Asthe]";
mes "But you must have forgotten the Mace I've lent you. Would you bring it back so that I can return it to the church?";
- close;
+ close;
}
}
mes "Are you having";
@@ -451,7 +455,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{
mes "building nearby.";
close;
case 9:
- mes "You went to Prontera on behalf of the convent for Priest Gardron? That must have been tough...";
+ mes "You went to "+(checkre(0)?"Prontera":"Payon")+" on behalf of the convent for Priest Gardron? That must have been tough...";
next;
mes "[Asthe]";
mes "Blessing!";
@@ -772,7 +776,10 @@ prt_monk,230,106,3 script Asthe#tu 79,{
mes "[Asthe]";
mes "Well, please don't forget what I've taught you. I hope you look back with fondness at our time together amongst these beautiful flowers. May God bless you~";
set tu_acolyte01, 25;
- getexp 500,300;
+ if (checkre(3))
+ getexp 1000,1000;
+ else
+ getexp 5000,3000;
specialeffect2 EF_CONE;
close;
}
@@ -793,7 +800,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{
// Priest Gardron
//============================================================
-monk_in,18,38,6 script Priest Gardron#tu 110,{
+monk_in,18,38,6 script Priest Gardron#tu 4_M_MINISTER,{
mes "[Priest Gardron]";
if(tu_acolyte01 == 7){
if(countitem(7148) >= 1){
@@ -826,8 +833,8 @@ monk_in,18,38,6 script Priest Gardron#tu 110,{
close;
}
} else if(tu_acolyte01 == 8){
- if(countitem(939) > 4){
- mes "Oh..!";
+ if(countitem((checkre(0)?939:957)) > 4){
+ mes "Oh...!";
mes "You've returned!";
mes "Let's see... One...";
mes "Two... Three...";
@@ -838,7 +845,7 @@ monk_in,18,38,6 script Priest Gardron#tu 110,{
mes "on behalf of the convent,";
mes "not to mention the fact that";
mes "you've protected the citizens";
- mes "of Prontera from danger.";
+ mes "of "+(checkre(0)?"Prontera":"Payon")+" from danger.";
next;
mes "[Priest Gardron]";
mes "May you always";
@@ -848,45 +855,88 @@ monk_in,18,38,6 script Priest Gardron#tu 110,{
mes "Acolyte training.";
set tu_acolyte01, 9;
percentheal 100,100;
- getexp 200,200;
+ if (checkre(3))
+ getexp 1000,1000;
+ else
+ getexp 2000,2000;
specialeffect2 EF_CONE;
//getitem 505,1; //Blue_Potion
close;
} else {
- mes "A little while ago, a Prontere Sister sent me a message. Apparently,";
- mes "the residents of Prontera are being plagued by Hornets.";
-
- next;
- mes "[Priest Gardron]";
- mes "She has requested the convent for help, but we've got a big problem. We're running out of people here that can deal with this situation...";
- next;
- mes "[Priest Gardron]";
- mes "....!";
- emotion e_gasp;
- next;
- mes "[Priest Gardron]";
- mes ""+strcharinfo(0)+",";
- mes "may I ask";
- mes "you to take care";
- mes "of this task? Exterminate the Hornets west of Prontera.";
- next;
- mes "[Priest Gardron]";
- mes "Since you're still in basic training, I will give you some";
- mes "help if you return with";
- mes "^3131FF5 Bee Stings^000000.";
- next;
- mes "[Priest Gardron]";
- mes "Now then...";
- mes "Will you go to Prontera?";
- next;
- if(select("Let's go to Prontera!:Um, let me get ready first.")==1){
+ if (checkre(0)) {
+ mes "A few days ago, a sister in Prontera";
+ mes "sent me a telegram that citizens had been harmed";
+ mes "by Hornets in the western field,";
+ mes "so she asked the abbey to help with them.";
+ next;
mes "[Priest Gardron]";
- mes "Good, good.";
- mes "I shall send you";
- mes "there to fight the monsters west of Prontera so that you can return with 5 Bee Stings. May God bless you...";
- close2;
- warp "prontera",116,72;
- end;
+ mes "But at this time,";
+ mes "we are also short of hands...";
+ mes "so it's a big problem.";
+ next;
+ mes "[Priest Gardron]";
+ mes "....!";
+ emotion e_gasp;
+ next;
+ mes "[Priest Gardron]";
+ mes "May I entrust you, acolyte "+strcharinfo(0)+",";
+ mes "this urgent matter?";
+ mes "Please dispose of Hornets";
+ mes "which are causing trouble on ^FF0000the western field of Prontera^000000.";
+ next;
+ mes "[Priest Gardron]";
+ mes "I know that you are undergoing the discipline,";
+ mes "So I will give you something to help you";
+ mes "if you bring me ^3131FF 5^000000 ^3131FFBee Sting^000000.";
+ next;
+ mes "[Priest Gardron]";
+ mes "Will you go to Prontera?";
+ next;
+ if(select("Let's go to Prontera!:I'll be back after doing some preparation.") == 1) {
+ mes "[Priest Gardron]";
+ mes "Okay, I will send you to Prontera.";
+ mes "Please dispose of Hornets and bring me 5 Bee Stings for confirmation.";
+ mes "My Lord, please protect this acolyte from evil monsters.";
+ close2;
+ warp "prontera",116,72;
+ end;
+ }
+ } else {
+ mes "A little while ago, the Payon Elder sent me a message. Apparently,";
+ mes "the residents of Payon are being attacked by Zombies.";
+ next;
+ mes "[Priest Gardron]";
+ mes "He has requested the convent for help, but we've got a big problem. We're running out of people here that can deal with this situation...";
+ next;
+ mes "[Priest Gardron]";
+ mes "....!";
+ emotion e_gasp;
+ next;
+ mes "[Priest Gardron]";
+ mes ""+strcharinfo(0)+",";
+ mes "may I ask";
+ mes "you to take care";
+ mes "of this task? Exterminate the Skeletons and Zombies in the";
+ mes "First Floor of Payon Dungeon.";
+ next;
+ mes "[Priest Gardron]";
+ mes "Since you're still in basic training, I will give you some";
+ mes "help if you return with";
+ mes "^3131FF5 Decayed Nails^000000.";
+ next;
+ mes "[Priest Gardron]";
+ mes "Now then...";
+ mes "Will you go to Payon?";
+ next;
+ if(select("Let's go to Payon!:Um, let me get ready first.")==1) {
+ mes "[Priest Gardron]";
+ mes "Good, good.";
+ mes "I shall send you";
+ mes "there to fight the monsters in Payon Dungeon so that you can return with 5 Decayed Nails. May God bless you...";
+ close2;
+ warp "payon",161,58;
+ end;
+ }
}
close;
}
@@ -902,14 +952,13 @@ monk_in,18,38,6 script Priest Gardron#tu 110,{
// Dog
//============================================================
-prt_monk,235,245,5 script Dog#tu 81,{
+prt_monk,235,245,5 script Dog#tu 4_DOG01,{
mes "[Dog]";
mes "^CDB79EBark bark!";
mes "Woof woof!^000000";
next;
if(tu_acolyte01 == 10){
- set .@dog_food, 0;
- while((1)){
+ while(1) {
switch(select("Give a treat.:Pet the dog.:End actions.")){
case 1:
set .@dog_food, .@dog_food + 1;
@@ -950,7 +999,7 @@ prt_monk,235,245,5 script Dog#tu 81,{
// Boy
//============================================================
-prt_monk,243,238,5 script Boy#boy_voi 139,5,5,{
+prt_monk,243,238,5 script Boy#boy_voi HIDDEN_WARP_NPC,5,5,{
OnTouch_:
if(tu_acolyte01 != 10)end;
mes "[??]";
@@ -961,7 +1010,7 @@ OnTouch_:
// Ill Girl
//============================================================
-prt_monk,226,257,6 script Ill Girl#tu 93,{
+prt_monk,226,257,6 script Ill Girl#tu 4_F_04,{
mes "[Angelic]";
if(tu_acolyte01 > 12){
mes "Thanks for helping me.";
@@ -995,7 +1044,6 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{
mes "H-hurts...";
next;
select("Are you alright?");
-
mes "[Angelic]";
mes "My sister...";
mes "She was so beautiful...";
@@ -1023,8 +1071,9 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{
next;
mes "["+strcharinfo(0)+"]";
mes "Are you alright?";
+ mes "................";
next;
- specialeffect EF_CURSEATTACK ;
+ specialeffect EF_CURSEATTACK;
soundeffectall "_curse.wav",0;
emotion e_omg;
mes "["+strcharinfo(0)+"]";
@@ -1056,12 +1105,12 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{
mes "["+strcharinfo(0)+"]";
mes "H...";
mes "Heal !!";
- specialeffect EF_HEAL ;
+ specialeffect EF_HEAL;
next;
mes "^3355FFNothing happened.";
mes "It doesn't look like";
mes "that skill will work.^000000";
- close;
+ close;
break;
case 2:
if(getskilllv("AL_BLESSING") > 0){
@@ -1081,7 +1130,10 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{
mes "It seemed that this good";
mes "deed has improved your skills.^000000";
set tu_acolyte01, 13;
- getexp 0,100;
+ if (checkre(3))
+ getexp 0,500;
+ else
+ getexp 0,1000;
specialeffect2 EF_CONE;
next;
break;
@@ -1160,7 +1212,7 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{
// Veiner
//============================================================
-prt_monk,197,228,3 script Veiner 89,{
+prt_monk,197,228,3 script Veiner 4_M_ORIENT02,{
mes "[Veiner]";
if(countitem(1081) && tu_acolyte01 == 18){
mes "So very exhausted...";
@@ -1204,7 +1256,7 @@ prt_monk,197,228,3 script Veiner 89,{
// Hedrick
//============================================================
-prt_monk,28,260,5 script Hedrick 50,{
+prt_monk,28,260,5 script Hedrick 1_M_04,{
mes "[Hedrick]";
mes "^333333*Whew!*^000000";
mes "Man I worked hard today!";
@@ -1240,7 +1292,7 @@ prt_monk,28,260,5 script Hedrick 50,{
// Weapon Merchant
//============================================================
-prt_monk,136,261,0 script Weapon Merchant#tu 139,9,9,{
+prt_monk,136,261,0 script Weapon Merchant#tu HIDDEN_WARP_NPC,9,9,{
OnTouch:
if(tu_acolyte01 != 20 || countitem(1081)==0) end;
mes "[Weapon Merchant]";
@@ -1258,7 +1310,7 @@ OnTouch:
// Karven
//============================================================
-monk_in,103,176,7 script Karven 60,{
+monk_in,103,176,7 script Karven 1_M_PASTOR,{
mes "[Karven]";
mes "May you rest";
if(tu_acolyte01 == 21 && countitem(7183)){
@@ -1292,7 +1344,7 @@ monk_in,103,176,7 script Karven 60,{
// Gloria
//============================================================
-prt_monk,219,164,3 script Gloria#tu 95,{
+prt_monk,219,164,3 script Gloria#tu 4_F_SISTER,{
mes "[Gloria]";
if(BaseJob != Job_Acolyte){
mes "Hi, hi~";
@@ -1365,12 +1417,12 @@ prt_monk,219,164,3 script Gloria#tu 95,{
// Cleope Verce
//============================================================
-prt_monk,153,210,3 script Cleope Verce 95,{
+prt_monk,153,210,3 script Cleope Verce 4_F_SISTER,{
mes "[Cleope Verce]";
if(BaseJob != Job_Acolyte){
if (JobLevel < 40) {
if (BaseLevel < 26) {
- mes "Oh my.. ";
+ mes "Oh my.. ";
mes "A newbie Acolyte?";
mes "It doesn't even seem";
mes "like you've learned";
@@ -1412,7 +1464,7 @@ prt_monk,153,210,3 script Cleope Verce 95,{
mes "Rookie.";
close;
} else if(BaseLevel < 36){
- mes "Oh my.. ";
+ mes "Oh my.. ";
mes "A young Acolyte?";
mes "You seem to have just";
mes "started learning your skills?";
@@ -1463,7 +1515,7 @@ prt_monk,153,210,3 script Cleope Verce 95,{
mes "young friend.";
close;
} else if(BaseLevel < 46){
- mes "Well, well, well~";
+ mes "Well, well, well~";
mes "Hello, young Acolyte.";
mes "You're still kind of";
mes "green, but I guess you're";
@@ -1539,7 +1591,7 @@ prt_monk,153,210,3 script Cleope Verce 95,{
}
// Range NPC
//============================================================
-prt_monk,217,123,0 script #tu_monk 139,10,10,{
+prt_monk,217,123,0 script #tu_monk HIDDEN_WARP_NPC,10,10,{
OnTouch_:
if(BaseJob == Job_Acolyte){
switch(tu_acolyte01){
@@ -1560,7 +1612,7 @@ OnTouch_:
// Eavesdrop
//============================================================
-prt_monk,223,123,3 script Eavesdrop#tu 111,{
+prt_monk,223,123,3 script Eavesdrop#tu HIDDEN_NPC,{
if(BaseJob != Job_Acolyte){
mes "^3355FFThere's nothing here.^000000";
close;
@@ -1726,8 +1778,8 @@ prt_monk,223,123,3 script Eavesdrop#tu 111,{
}
}
-/*
-sec_in02,17,156,3 script 1st Job Quest Reset 726,{
+sec_in02,17,156,3 script 1st Job Quest Reset 4_F_JOB_BLACKSMITH,{
+ callfunc "F_GM_NPC";
mes "[1st Job Quest]";
mes "Which would you like to reset?";
next;
@@ -1755,4 +1807,3 @@ sec_in02,17,156,3 script 1st Job Quest Reset 726,{
mes "Completed.";
close;
}
-*/