diff options
Diffstat (limited to 'npc/020-7-1/pagemakers.txt')
-rw-r--r-- | npc/020-7-1/pagemakers.txt | 77 |
1 files changed, 74 insertions, 3 deletions
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; |