From 779e8c6fb93bbff8fba7d5ef287eb92590d115dd Mon Sep 17 00:00:00 2001 From: euphyy Date: Sat, 1 Dec 2012 22:45:51 +0000 Subject: * Updated Arch Bishop, Guillotine Cross, Mechanic, and Royal Guard job quests to their latest versions. * Fixed Izlude RE warps (bugreport:6884, bugreport:6285). * Fixed experience reward in Cursed Spirit quest (bugreport:6288). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16990 54d463be-8e91-2dee-dedb-b68131a5f0ec --- npc/re/jobs/3-2/royal_guard.txt | 328 +++++++++++++++++++++------------------- 1 file changed, 176 insertions(+), 152 deletions(-) (limited to 'npc/re/jobs/3-2/royal_guard.txt') diff --git a/npc/re/jobs/3-2/royal_guard.txt b/npc/re/jobs/3-2/royal_guard.txt index 578a39ec0..4a96bed59 100644 --- a/npc/re/jobs/3-2/royal_guard.txt +++ b/npc/re/jobs/3-2/royal_guard.txt @@ -1,68 +1,68 @@ //===== rAthena Script ======================================= // Royal Guard Job change Quest //===== By: ================================================== -//= brAthena +//= Muad_Dib //===== Current Version: ===================================== -//= 1.0 +//= 1.1 //===== Compatible With: ===================================== -//= Any rAthena or brAthena SVN +//= rAthena SVN //===== Description: ========================================= -//= [Translated from the Official] +//= [Official Conversion] //= Job change Quest from Crusader / Paladin -> Royal Guard. //===== Additional Comments: ================================= -//= 1.0 First Version. +//= 1.0 First Version. [brAthena] +//= 1.1 Updated script. [Euphy] //============================================================ -prt_castle,48,163,3 script Gentleman#4386457567 57,{ - if(!checkweight(1201,1)) { - mes "You have too many items. please arrange them then try again."; - close; - } - if(MaxWeight - Weight < 1000) { - mes "You have too much items, please make more light."; + +prt_castle,48,161,3 script Middle-aged Gentleman#rg 57,{ + if (checkweight(1201,1) == 0 || MaxWeight - Weight < 1000) { + mes "- Your pack is too heavy. -"; + mes "- Lighten your body first -"; + mes "- and please try again. -"; close; } - if(Class == 4066 || Class == 4073 || Class == 4102) { + if (Class == Job_Royal_Guard || Class == Job_Royal_Guard_T || Class == Job_Baby_Guard) { mes "[Middle-aged Gentleman]"; mes "Uh? What am I doing? I came here for an errand..."; next; - mes "^000099Maybe my feeling has moved to another body^000000"; + mes "^000099Maybe my feeling has moved to another body.^000000"; close; } - if(JobLevel < 50 || SkillPoint || BaseLevel < 99) { + if (BaseLevel < 99 || JobLevel < 50 || SkillPoint != 0) { mes "[Middle-aged Gentleman]"; mes "Oh you are so young. Keep working hard."; close; } - if(checkriding() || checkcart() || checkfalcon()) { + if (checkriding() || checkcart() || checkfalcon()) { mes "[Middle-aged Gentleman]"; mes "You are dragging something. If you're riding something you better dismount it before proceeding."; close; } - if((Class != 14) && (Class != 4015) && (Class != 4037)) { + if (BaseJob != Job_Crusader) { mes "[Middle-aged Gentleman]"; mes "I don't have anything to say to you. Find another person."; close; } - if(job_royal < 1) { + if (job_royal == 0) { mes "[Middle-aged Gentleman]"; - mes "What was I saying... (mumble) the remaining segment is in Glass Heim around 13......."; + mes "What was I saying... (mumble) the remaining segment is in Glast Heim around 13......."; next; mes "[Middle-aged Gentleman]"; mes "Uhh?"; mes "Did you need something?"; next; - select "I haven't seen you before."; + select("I haven't seen you before."); mes "[Middle-aged Gentleman]"; mes "Hehehe, don't worry about me."; next; mes "[Middle-aged Gentleman]"; mes "If you don't have business with me, just keep going my friend."; next; - select "You don't look like a Knight..."; + select("You don't look like a Knight..."); mes "[Middle-aged Gentleman]"; mes "You're a curious one. Who are you? What do you want?"; next; - select "Just looking around!:This is my office!:Who am I? Who are you?"; + select("Just looking around!:This is my office!:Who am I? Who are you?"); mes "[Middle-aged Gentleman]"; mes "Do you want to argue with me? Do you know who I am?"; next; @@ -78,7 +78,7 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "I'm a member here and have the authority to find out what your business is here."; next; mes "["+strcharinfo(0)+"]"; - mes "You are a stranger and I'm not sure if you belog here."; + mes "You are a stranger and I'm not sure if you belong here."; next; mes "["+strcharinfo(0)+"]"; mes "If you tell me your identity, I will apologize."; @@ -91,22 +91,32 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "I am Heinrich."; mes "I'm collecting information about King Schmidtz's trace which has disappeared."; next; - select "Schmidzt's trace? Is it a treasure?"; + select("Schmidzt's trace? Is it a treasure?"); mes "[Heinrich]"; mes "Most archaeologists are eager to get treasure. I'm looking for traces of the ^000099Royal Guard^000000 and their sons who belong to the Schmidtz line."; next; - select "Royal Guard?"; + select("Royal Guard?"); mes "[Heinrich]"; mes "Sounds interesting doesn't it? I can't really say but their history and files are under strict security."; next; - select "Can't you tell me?"; + select("Can't you tell me?"); mes "[Heinrich]"; mes "I can't really talk about the Royal Guard to just anyone who asks about them."; next; mes "[Heinrich]"; mes "BUT!! I want to believe you..."; next; - if(select("I want to know more.:Stop talking.") == 2) { + switch(select("I want to know more.:Stop talking.")) { + case 1: + mes "[Heinrich]"; + mes "You are impetuous."; + next; + mes "[Heinrich]"; + mes "It's not a simple story to tell a person like you. Go back."; + set job_royal,1; + setquest 12090; + close; + case 2: mes "[Heinrich]"; mes "Good idea."; next; @@ -114,21 +124,14 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "Just forget it and let your mind do more worthy things."; close; } - mes "[Heinrich]"; - mes "You are impetuous."; - next; - mes "[Heinrich]"; - mes "It's not a simple story to tell a person like you. Go back."; - set job_royal,1; - setquest 12090; - close; } mes "[Heinrich]"; - if(job_royal == 1) { + if (job_royal == 1) { + mes "[Heinrich]"; mes "You are persistent friend."; mes "Do you have more things to talk to me about?"; next; - select "If you can't trust me, test me pal."; + select("If you can't trust me, test me pal."); mes "[Heinrich]"; mes "Test?"; mes "Did you say the test? Huhu!"; @@ -136,12 +139,12 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "[Heinrich]"; mes "Friend, you have shown your interest about my job, are you sure? Or are you kidding me?"; next; - select "I'm serious!"; + select("I'm serious!"); mes "[Heinrich]"; mes "Really?"; mes "Good. You might have the wrong idea about what a Royal Guard is. So, in your opinion, what do you think is the key to being a Royal Guard?"; next; - select "Decision and Bravery:Calm Judgment:Sharp wisdom:Benevolent spirit"; + select("Decision and Bravery:Calm Judgment:Sharp wisdom:Benevolent spirit"); mes "[Heinrich]"; mes "Good choice."; mes "Actually, the other 3 are also needed to have the Royal Guard spirit, friend."; @@ -159,8 +162,8 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "[Heinrich]"; mes "Only those who have qualification can hear the Royal Guard history."; next; - select "What can I do to hear that story?"; - mes "^000099Heinrich has an agonized look on his face. Then he looked like he fell asleep. Finally he says with wreckless abandon.^000000"; + select("What can I do to hear that story?"); + mes "^000099Heinrich has an agonized look on his face. Then he looked like he fell asleep. Finally he says with reckless abandon.^000000"; next; mes "[Heinrich]"; mes "You are too stubborn."; @@ -172,7 +175,7 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "[Heinrich]"; mes "If you want to hear more story, you have to show me your similar attitude."; next; - if(select("That's an unfair demand.:I will try.") == 2) { + if(select("That's an unfair demand.:I will try.") == 1) { mes "[Heinrich]"; mes "Good idea, it would better to find something more worthy."; close; @@ -188,9 +191,8 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ set job_royal,2; changequest 12090,12091; close; - } - if(job_royal == 2) { - if(countitem(7097) < 100) { + } else if (job_royal == 2) { + if (countitem(7097) < 100) { mes "Don't forget to bring 100 Burning Heart."; close; } @@ -199,16 +201,15 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ next; mes "[Heinrich]"; mes "Wait while I arrange the stuff that you brought."; - delitem 7097,100; + delitem 7097,100; //Burning_Heart set job_royal,3; changequest 12091,12092; close; - } - if(job_royal == 3) { + } else if (job_royal == 3) { mes "..."; mes "Good. I can feel truth from your heart. Now I can tell you more of the story."; next; - select "Ok tell me more."; + select("Ok tell me more."); mes "[Heinrich]"; mes "The best members of the Crusader and Paladin classes can gain the qualification of the Royal Guard."; next; @@ -218,7 +219,7 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "[Heinrich]"; mes "We still have many opinions about how they could have survived. Surely someone had to have believed that their history was not false."; next; - select "Are there still documents?"; + select("Are there still documents?"); mes "[Heinrich]"; mes "Hmm, documents you say..."; next; @@ -231,7 +232,7 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "[Heinrich]"; mes "It's like it disappeared with the king."; next; - select "So the reason of finding their traces..."; + select("So the reason of finding their traces..."); mes "[Heinrich]"; mes "I was worried about past Royal Guards that might not have been able to pass down their history."; next; @@ -241,11 +242,11 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "[Heinrich]"; mes "That's why I'm concentrating to revive their job."; next; - select "How much progress have you made?"; + select("How much progress have you made?"); mes "[Heinrich]"; mes "Fortunately, I excavated most of the treasures and interpreted them. I just have one trace left to find."; next; - select "The rest of the traces?"; + select("The rest of the traces?"); mes "[Heinrich]"; mes "The Royal Guard carved the mark of King Schmidtz on their clothes. The trace of this custom is the last clue."; next; @@ -267,9 +268,9 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "Are you kidding?"; mes "You shouldn't treat it like it's just some normal chore."; next; - select "I'm not kidding. I'm serious."; + select("I'm not kidding. I'm serious."); mes "[Heinrich]"; - mes "If you say it like that I don't have anymore options."; + mes "If you say it like that I don't have any more options."; next; mes "[Heinrich]"; mes "I don't know if it will be helpful or not. I will write an explanation in detail."; @@ -278,12 +279,14 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ set job_royal,4; changequest 12092,12093; close; - } - if(job_royal == 4) { - if(!countitem(6274)) { + } else if (job_royal == 4) { + if (countitem(6274) == 0) { mes "Our staff has already left to find the last trace, so don't work too hard."; close; } + mes "No, it's not the correct one that I want."; + next; + mes "[Hainrich]"; mes "You surprised me. How did you get it? So far no one could get it."; next; mes "[Heinrich]"; @@ -295,7 +298,7 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "[Heinrich]"; mes "Our staff excavated it. They assumed that King Schmidtz used it. But it wasn't used by him."; next; - select "Sure it's wasn't used by the King?"; + select("Sure it's wasn't used by the King?"); mes "[Heinrich]"; mes "I can't be entirely sure."; mes "Maybe you are right but, according to when we did the initial identification we can be sure it wasn't used."; @@ -303,65 +306,72 @@ prt_castle,48,163,3 script Gentleman#4386457567 57,{ mes "[Heinrich]"; mes "But it's an old treasure so, somehow it will be useful. I might know how to use it."; next; - select "Can I keep it?"; + select("Can I keep it?"); mes "[Heinrich]"; mes "Of course."; mes "Someday it might be useful to you."; next; - mes "^000099You get the shield from Heinrich. There are some letters carved on the inside of the shield."; + mes "^000099You get the shield from Heinrich. There are some letters carved on the inside of the shield.^000000 "; next; - mes "If you want to see the letters, please check the quest window.^000000"; + mes "^000099If you want to see the letters, please check the quest window.^000000"; next; mes "[Heinrich]"; mes "Ok~~ now."; mes "I'll be deciphering the cloth for now so I will be very busy!"; - delitem 6274,1; - getitem 6275,1; + delitem 6274,1; //Saint_Cloth_Piece + getitem 6275,1; //King_Shield set job_royal,5; changequest 12093,12094; close; - } - if(!countitem(6275)) { - mes "What? Did you lose the shield? What is the one on your back?"; - getitem 6275,1; + } else if (job_royal == 5) { + if (countitem(6275) == 0) { + mes "What? Did you lose the shield? What is the one on your back?"; + getitem 6275,1; //King_Shield + close; + } + mes "Thanks to your help I can finish the excavation work. Thanks a lot."; close; } - mes "Thanks to your help I can finish the excavation work. Thanks a lot."; - close; } glast_01,240,366,5 script Memory of King Schmidtz 844,{ - if(!checkweight(1201,1) || MaxWeight - Weight < 1000) { - mes "You are too heavy. Make yourself lighter."; + if (checkweight(1201,1) == 0 || MaxWeight - Weight < 1000) { + mes "- Your pack is too heavy. -"; + mes "- Lighten your body first -"; + mes "- and please try again. -"; close; } - if(job_royal == 5 && (Class == 14 || Class == 4015 || Class == 4037)) { - if(countitem(6275) < 1) { + if (ismounting() || checkriding()) { + mes " Please unequip your riding pet and try again!"; + close; + } + if (BaseJob == Job_Crusader && job_royal == 5) { + if (countitem(6275) == 0) { mes "^000099You seem to have lost the shield. Go back to Heinrich and ask for help^000000."; close; } mes "[Memory of King Schmidtz]"; mes "Who are you?"; next; - select "I brought a relic..."; + select("I brought a relic..."); mes "[Memory of King Schmidtz]"; mes "My relic?"; next; mes "[Memory of King Schmidtz]"; mes "Too bad. Here is one more friend who has been cheated by Heinrich."; next; - select "Do you know Heinrich?"; + select("Do you know Heinrich?"); mes "[Memory of King Schmidtz]"; mes "He was my faithful adjutant. And he has continued to be so for hundreds of years."; next; - select "How has he lived for hundreds..."; + select("How has he lived for hundreds..."); mes "[Memory of King Schmidtz]"; mes "Maybe his body is just a cast. He found a way to move from body to body in order to stay alive."; next; mes "[Memory of King Schmidtz]"; mes "He doesn't want to accept my death and wanders the world, continuing to find Royal Guards."; next; - select "What's the meaning of this shield?"; + select("What's the meaning of this shield?"); mes "[Memory of King Schmidtz]"; mes "The shield from Heinrich is our contract before I died."; next; @@ -374,7 +384,7 @@ glast_01,240,366,5 script Memory of King Schmidtz 844,{ mes "[Memory of King Schmidtz]"; mes "Now he doesn't need to do it anymore, but will remain as a fool whom can't forget his King's final order."; next; - select "So what now? Can I leave?"; + select("So what now? Can I leave?"); mes "[Memory of King Schmidtz]"; mes "Sorry but I can't send you now."; next; @@ -401,51 +411,59 @@ glast_01,240,366,5 script Memory of King Schmidtz 844,{ close; } mes "[Memory of King Schmidtz]"; + if (BaseLevel < 99 || JobLevel < 50 || SkillPoint != 0) { + mes "Look at your body before that!"; + next; + mes "[Memory of King Schmidtz]"; + mes "Are still sentimentally attached to yourself?"; + mes "You cannot inherit the Royal Guard!"; + close; + } mes "Congratulations! Young Royal Guard."; mes "Be a symbol of honor and continue the great tradition of your new name."; close2; specialeffect2 EF_MAPPILLAR; progressbar "FFFF00",7; specialeffect2 EF_LORD; - delitem 6275,1; + delitem 6275,1; //King_Shield erasequest 12094; - if(class == 4037){ - jobchange 4102; - } - else if(class == 14){ - jobchange 4066; - }else{ - jobchange 4073; - } - getitem 5757,1; - getitem 2795,1; + jobchange roclass(eaclass()|EAJL_THIRD); + getitem 5757,1; //Schmidt_Helm + getitem 2795,1; //Green_Apple_Ring end; } + end; } gl_church,173,88,0 script Delicate trace#01 844,{ - if(job_royal == 4 && !countitem(6274)) { + if (job_royal == 4 && countitem(6274) == 0) { progressbar "ffff00",5; - if(set(.@rand,rand(70)) >= 65) { + set .@roy_ran, rand(1,70); + if (.@roy_ran < 6) + getitem 6274,1; //Saint_Cloth_Piece + else if (.@roy_ran > 5 && .@roy_ran < 66) + getitem 7049,1; //Stone + else { mes "While investigating, the topography breaks. It would be better to dig other places for a while."; disablenpc strnpcinfo(0); initnpctimer; close; } - getitem (.@rand >= 5 ? 7049:6274),1; - end; } mes "There is a trace that someone has already dug here."; close; - - OnTimer60000: - enablenpc strnpcinfo(0); - stopnpctimer; - OnTimer1000: - OnTimer20000: - OnTimer40000: - specialeffect EF_MAPPILLAR; - end; +OnTimer60000: + enablenpc strnpcinfo(0); + stopnpctimer; +OnTimer1000: +OnTimer20000: +OnTimer40000: + specialeffect EF_MAPPILLAR; + end; + specialeffect EF_MAPPILLAR; + end; + specialeffect EF_MAPPILLAR; + end; } gl_church,158,103,0 duplicate(Delicate trace#01) Delicate trace#02 844 gl_church,139,90,0 duplicate(Delicate trace#01) Delicate trace#03 844 @@ -460,58 +478,64 @@ gl_church,105,115,0 duplicate(Delicate trace#01) Delicate trace#11 844 gl_church,158,100,0 script #Clue of traces 111,4,4,{ end; - OnTouch: - if(job_royal == 4 && !countitem(6274)) { - specialeffect2 EF_FREEZE; - mes "I can feel strong power around here. It would be better to explore around here."; - viewpoint 1,173,88 ,1, 0xFFFF00; - viewpoint 1,158,103,2, 0xFFFF00; - viewpoint 1,139,90 ,3, 0xFFFF00; - viewpoint 1,126,62 ,4, 0xFFFF00; - viewpoint 1,148,5 ,5, 0xFFFF00; - viewpoint 1,185,72 ,6, 0xFFFF00; - viewpoint 1,211,94 ,7, 0xFFFF00; - viewpoint 1,185,125,8, 0xFFFF00; - viewpoint 1,143,125,9, 0xFFFF00; - viewpoint 1,105,115,10,0xFFFF00; - close; - } +OnTouch: + if (job_royal == 4 && countitem(6274) == 0) { + specialeffect2 EF_FREEZE; + mes "I can feel strong power around here. It would be better to explore around here."; + viewpoint 1,173,88 ,1, 0xFFFF00; + viewpoint 1,158,103,2, 0xFFFF00; + viewpoint 1,139,90 ,3, 0xFFFF00; + viewpoint 1,126,62 ,4, 0xFFFF00; + viewpoint 1,148,5 ,5, 0xFFFF00; + viewpoint 1,185,72 ,6, 0xFFFF00; + viewpoint 1,211,94 ,7, 0xFFFF00; + viewpoint 1,185,125,8, 0xFFFF00; + viewpoint 1,143,125,9, 0xFFFF00; + viewpoint 1,105,115,10,0xFFFF00; + close; + } + end; } -sec_in02,12,43,3 script Caller 57,1,1,{ - switch(select("Royal Guard:Rune Knight:Call Player")) { - case 1: - mes "1~5"; - next; - if(input(.@val,1,5)) { - mes "Set item to adjust the Royal Guard"; - mes "You can only set a bumber betweeen 1 to 5."; - close; - } - set job_royal,.@val; +/* +sec_in02,12,43,3 script sorcereryal 57,1,1,{ + switch(select("Royal Guard:Rune Knight:Sorcerer")) { + case 1: + mes "1~5"; + input .@input; + next; + if (.@input < 1 || .@input > 5) { + mes "Set item to adjust the Royal Guard"; + mes "You can only set a number between 1 to 5."; + } else { + set job_royal, .@input; mes "Completed"; - close; - case 2: - mes "1~24"; - next; - if(input(1,24)) { - mes "Set item to adjust the Rune Knight"; - mes "You can only set a bumber betweeen 1 to 24."; - close; - } - set job_rune_edq,.@val; + } + close; + case 2: + mes "1~24"; + input .@input; + next; + if (.@input < 1 || .@input > 24) { + mes "Set item to adjust the Rune Knight"; + mes "You can only set a nbumber between 1 to 24."; + } else { + set job_rune_edq, .@input; mes "Completed"; - close; - case 3: - mes "1~5"; - next; - if(input(1,5)) { - mes "Item Adjust call"; - mes "You can only set a bumber betweeen 1 to 5."; - close; - } - set job_soc,.@val; + } + close; + case 3: + mes "1~5"; + input .@input; + next; + if (.@input < 1 || .@input > 5) { + mes "Set item to adjust the Sorcerer"; + mes "You can only set a number between 1 to 5."; + } else { + set job_soc, .@input; mes "Completed"; - close; + } + close; } -} \ No newline at end of file +} +*/ \ No newline at end of file -- cgit v1.2.3-70-g09d2