From 43f03e78ae72cf295811e2d1e4bcd9c2fddbdade Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Mon, 7 Jan 2019 03:37:26 -0200 Subject: Rakinorf is complete. Hehehe. Good luck! --- npc/012-2/rakinorf.txt | 169 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 162 insertions(+), 7 deletions(-) (limited to 'npc/012-2/rakinorf.txt') diff --git a/npc/012-2/rakinorf.txt b/npc/012-2/rakinorf.txt index cc326dd7a..570e10245 100644 --- a/npc/012-2/rakinorf.txt +++ b/npc/012-2/rakinorf.txt @@ -20,7 +20,7 @@ mesn; mesq l("Ah... I need more beer to keep going... This is so awful..."); // Handle main storyline - if (.@n >= 5 && .@n < 6) + if (.@n >= 5 && .@n <= 6) goto L_MainStory; // Handle main storyline @@ -71,10 +71,16 @@ L_MainStory: // 6 - Airlia told you what she knew, must talk to Rakinorf // 7 - Need to get levels (standard quest) // 6 - Must visit Halinarzo Library + // Note: Expires on logout: @returnpotion_expiredate // 8 - TODO .@n2=getq2(General_Narrator); + if (.@n == 5) { + mesn; + mesq l("You should talk to Airlia again to understand what Lua wants me to do."); + mes ""; + } select rif(getgmlevel(), l("Maybe I could give you more beer?")), @@ -83,8 +89,9 @@ L_MainStory: rif(.@n2 == 2, l("I know how many bat teeth and wings Arkim collected.")), rif(.@n2 == 3, l("I know it may sound silly, but I need your help to find out who I am.")), rif(.@n2 == 4, l("Where can I find the previous mayor?")), - rif(.@n2 == 6, l("Airlia told me XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")), + rif(.@n2 == 6, l("Airlia told me you should lend me a Return Potion.")), rif(.@n2 == 7, l("I think I'm ready.")), + rif(.@n == 6 && (!countitem(ReturnPotion)||@returnpotion_expiredate.> \"Sorry pal, I have no idea what she meant by that.\""); + next; + mesn; + mesq l("You see, just @@ ago, Hurnscald was liberated from a massive monster attack.", FuzzyTime($HURNS_LIBDATE)); + mesq l("Dragonstar and Aisen did their best along many others, and managed to liberate Hurnscald, though!"); + next; + mesn; + mesq l("Well, problem is, after that, there was demand for an election. The previous mayor lost. I won."); + next; + mesn; + mesq l("That's basically how democracy works. You are warranted to stay on the office until something goes gravely wrong."); + mesq l("Now I just drink down my worries and hope for the best."); + next; + mesn; + mesq l("The previous mayor was an amazing mayor, but even so, he lost the office after the Monster King attacked."); + mesq l("His daughter, Airlia, is not air-headed as her mother Lia. Try asking her instead."); + next; + mesn; + mesq l("I'm afraid I can't be of any help to you."); + next; + mesn; + mesq l("And now... Somber time is over! Time to get back to drinking! Yaaaay!!"); + break; + case 6: + mesn; + mesq l("Whaaaaaaat *hic* is she *hic* have she gotten crazy? *hic*"); + next; + mesn; + mesq l("That's a *hic* precious item, and you're *hic* not nearly *hic* strong or worth enough to use it!"); + next; + mesn; + mesq l("You will need to *hic* prove yourself to *hic* me and the town first..."); + next; + mesc b(l(".:: Main Quest 2-2 ::.")), 3; + if (BaseLevel >= 40) + mesc l("* @@/@@ Base Level", BaseLevel, 40), 2; + else + mesc l("* @@/@@ Base Level", BaseLevel, 40), 9; + + if (JobLevel >= 15) + mesc l("* @@/@@ Job Level", JobLevel, 15), 2; + else + mesc l("* @@/@@ Job Level", JobLevel, 15), 9; + + if (countitem(Scythe)) + mesc l("* @@/@@ @@", countitem(Scythe), 1, getitemlink(Scythe)), 2; + else + mesc l("* @@/@@ @@", countitem(Scythe), 1, getitemlink(Scythe)), 9; + + if (getq(HurnscaldQuest_BloodDonor)) + mesc l("* Donate blood at least once."), 2; + else + mesc l("* Donate blood at least once."), 9; + + next; + mesn; + if (!countitem(Scythe)) + mes l("- Help the farmers. We rely a lot on agriculture."); + if (!getq(HurnscaldQuest_BloodDonor)) + mes l("- To donate blood, go to the hospital and ask about it."); + if (JobLevel < 15) + mes l("- Boss give more Job experience, but as long that you keep killing, you'll keep gaining."); + break; + + case 7: + mesc b(l(".:: Main Quest 2-2 ::.")), 3; + if (BaseLevel >= 40) + mesc l("* @@/@@ Base Level", BaseLevel, 40), 2; + else + mesc l("* @@/@@ Base Level", BaseLevel, 40), 9; + + if (JobLevel >= 15) + mesc l("* @@/@@ Job Level", JobLevel, 15), 2; + else + mesc l("* @@/@@ Job Level", JobLevel, 15), 9; + + if (countitem(Scythe)) + mesc l("* @@/@@ @@", countitem(Scythe), 1, getitemlink(Scythe)), 2; + else + mesc l("* @@/@@ @@", countitem(Scythe), 1, getitemlink(Scythe)), 9; + + if (getq(HurnscaldQuest_BloodDonor)) + mesc l("* Donate blood at least once."), 2; + else + mesc l("* Donate blood at least once."), 9; + + next; + if (BaseLevel >= 40 && + JobLevel >= 15 && + countitem(Scythe) && + getq(HurnscaldQuest_BloodDonor)) + goto L_Complete; + mesn; + if (!countitem(Scythe)) + mes l("- Help the farmers. We rely a lot on agriculture."); + if (!getq(HurnscaldQuest_BloodDonor)) + mes l("- To donate blood, go to the hospital and ask about it."); + if (JobLevel < 15) + mes l("- Boss give more Job experience, but as long that you keep killing, you'll keep gaining."); break; + case 8: + if (countitem(ReturnPotion)) + delitem ReturnPotion, countitem(ReturnPotion); + inventoryplace ReturnPotion, 5; + getitem ReturnPotion, 5; + @returnpotion_expiredate=gettimetick(2)+1200+rand(300,1200); // 20 minutes + 5~20 minutes == last 25~40 minutes + mesn; + mesq l("There... *hic* They will expire *hic* in just @@... Or on logout.", FuzzyTime(@returnpotion_expiredate)); + break; } close; @@ -152,6 +291,22 @@ L_Fail: // No penalty? Really?? close; +L_Complete: + inventoryplace ReturnPotion, 10; + setq General_Narrator, 6, 0; + getitem ReturnPotion, 10; + @returnpotion_expiredate=gettimetick(2)+1200+rand(600,1800); // 20 minutes + 10~30 minutes == last 30~60 minutes + getexp BaseLevel*750, JobLevel*50;// Reference Levels: (40, 15) + mesn; + mesq l("Good, you *hic* proved your *hic* worth. I'll give you them."); + next; + mesn; + mesq l("They will expire *hic* in just @@... Or on logout.", FuzzyTime(@returnpotion_expiredate)); + next; + mesn; + mesq l("What are you *hic* doing here? They are expiring! GO NOW!"); + close; + OnInit: .questID=4; .itemID=Beer; -- cgit v1.2.3-60-g2f50