diff options
Diffstat (limited to 'npc')
-rw-r--r-- | npc/012-7/airlia.txt | 6 | ||||
-rw-r--r-- | npc/020-7-1/oskari.txt | 6 | ||||
-rw-r--r-- | npc/020-7-1/pagemakers.txt | 77 | ||||
-rw-r--r-- | npc/020-7-1/peetu.txt | 4 |
4 files changed, 81 insertions, 12 deletions
diff --git a/npc/012-7/airlia.txt b/npc/012-7/airlia.txt index 9025adf5b..f833eb7fe 100644 --- a/npc/012-7/airlia.txt +++ b/npc/012-7/airlia.txt @@ -149,10 +149,8 @@ L_In5: L_Nivalis: // Supposed to send player to talk with another NPC on Nivalis about World's Edge - mesc b(l(".:: Main Quest 2-3 ::.")), 3; - mesc l("* Talk to Librarian in Halinarzo"), 2; - mesc l("* Return to Hurnscald Townhall"), 2; - mesc l("@@ You need to wait further releases to continue this quest!", b(l("WARNING:"))); + mesc b(l(".:: Main Quest 3-1 ::.")), 3; + mesc l("* Meet the Blue Sage"), 9; close; OnInit: diff --git a/npc/020-7-1/oskari.txt b/npc/020-7-1/oskari.txt index 3f0df18b7..1268a7d43 100644 --- a/npc/020-7-1/oskari.txt +++ b/npc/020-7-1/oskari.txt @@ -86,7 +86,7 @@ function pIdle { close; } -// Here we begin +// Peetu Question function pPeetu { mesn; mesq l("You have to excuse me, as you might have heard we're having some trouble at the moment and I, as Chief of Nikolai's household staff, have a lot to do."); @@ -129,7 +129,7 @@ function pPeetu { close; } -// Here we begin +// Elias Question function pElias { mesn; mesq l("Have you talked to Peetu co-workers about their opinion yet?"); @@ -163,7 +163,7 @@ function pElias { close; } -// Here we begin +// We're done. function pComplete { mesn; mesq l("Thanks again for your investigations. It was a great help."); diff --git a/npc/020-7-1/pagemakers.txt b/npc/020-7-1/pagemakers.txt index e54a7641b..cb73ea3c0 100644 --- a/npc/020-7-1/pagemakers.txt +++ b/npc/020-7-1/pagemakers.txt @@ -232,6 +232,7 @@ function askQuestion { } while (@menu != 1); return; } + OnInit: .bsId=BS_NPC02; .sex=G_FEMALE; @@ -263,9 +264,79 @@ OnInit: 020-7-1,45,31,4 script Kullervo NPC_BLUESAGEWORKER_MA,{ - npctalk3 l("I make book pages with... something."); - goodbye; - end; + function askQuestion; + .@qt=getq2(NivalisQuest_BlueSagePagemaker); + mesn; + if (.@qt & BS_PMPAGE) + mesq l("Very well, now I can create more paper."); + else + mesq l("Oh no! What should we do now?"); + + // Begin here + askQuestion(); + .@qt=getq2(NivalisQuest_BlueSagePagemaker); + mes ""; + mesn; + mesq l("We're nearly out of paper. The new books require so much material... And it's not easy to get Reed Bundles to create new paper."); + next; + mesn; + mesq l("I only need @@/@@ @@ to make enough magic paper for the books... Do you, perchance, have them with you?", countitem(ReedBundle), 15, getitemlink(ReedBundle)); + if (countitem(ReedBundle) < 15) + close; + next; + if (askyesno() == ASK_NO) { + mes ""; + mesn; + mesq l("Well, I guess I was thinking too high of a random adventurer like yourself..."); + close; + } + mes ""; + + delitem ReedBundle, 15; + setq2 NivalisQuest_BlueSagePagemaker, .@qt|BS_PMPAGE; + getexp 3535, 215; // 20% from references, rounded up. It's part of main story. + // is present. REMEMBER THIS IS A LEVEL 36/16 QUEST, REGARDLESS IF EVERYONE DECIDES + // TO DO IT AT LEVEL 40. Exp reward will not change. It's main story, too. + // Besides, it gives Job Experience, which is not common. + mesn; + mesq l("Thank you! That's very generous of you."); + close; + +function askQuestion { + .@qs=BSQuestion(getq(NivalisQuest_BlueSage)); + do { + .@q=getq(NivalisQuest_BlueSage); + .@q2=getq2(NivalisQuest_BlueSage); + .@q3=getq3(NivalisQuest_BlueSage); + .@qt=getq2(NivalisQuest_BlueSagePagemaker); + next; + select + rif(!(.@qt & BS_PMPAGE), l("Can I help you?")), + rif(.@qs & BS_QVISITOR, l("Do you know anything about the strange visitor?")), + rif(.@qs & BS_QHELPER, l("What's your opinion of Peetu and his work?")), + any(l("I need to leave."), l("See you."), l("Bye."), l("Good luck.")); + mes ""; + switch (@menu) { + case 2: + mesn; + mesq l("Oh, I know who you mean! That impertinent person came over in the workshop area and fiddled about with all kinds of things here! Such a rude person! Didn't he understand that we had delicate things going on here? We had to send him back to the library area several times."); + next; + mesn; + mesc l("She shakes her head."); + mesq l("Sometimes I think it'd be better not to allow visitors here. But Nikolai set a high value on keeping contact with the population. Politics."); + if (!(.@q2 & .bsId)) + setq2 NivalisQuest_BlueSage, .@q2 | .bsId; + break; + case 3: + mesn; + mesq l("Mh, I don't know him closely."); + break; + case 4: + close; + } + } while (@menu != 1); + return; +} OnInit: .bsId=BS_NPC03; diff --git a/npc/020-7-1/peetu.txt b/npc/020-7-1/peetu.txt index b51611050..3e79d02cf 100644 --- a/npc/020-7-1/peetu.txt +++ b/npc/020-7-1/peetu.txt @@ -37,7 +37,7 @@ function pIntro; function pContinue; function pReflection; - function pInvestigation; // TODO + function pInvestigation; function pComplete; .@q=getq(NivalisQuest_BlueSage); @@ -322,7 +322,7 @@ function pInvestigation { // The crime was "solved" function pComplete { mesn; - mesq l("Oh, hey, welcome back, @@! THanks for all your help!", strcharinfo(0)); + mesq l("Oh, hey, welcome back, @@! Thanks for all your help!", strcharinfo(0)); next; mesn; .@subject$=any(l("town finances"), l("house finances"), l("town damage by monsters"), l("library damage"), l("supply report"), l("magic book"), l("town overview")); |