diff options
author | Jesusaves <cpntb1@ymail.com> | 2019-05-20 13:52:28 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2019-05-20 13:52:28 -0300 |
commit | 9f56fd8441670493d67fd0d55b28595db87eaa92 (patch) | |
tree | c288ec1d33f2b40de27904598683a040b017394f /npc/020-7-1/pagemakers.txt | |
parent | 093645d7b7477189080fdc537eeeb91d57167c59 (diff) | |
download | serverdata-9f56fd8441670493d67fd0d55b28595db87eaa92.tar.gz serverdata-9f56fd8441670493d67fd0d55b28595db87eaa92.tar.bz2 serverdata-9f56fd8441670493d67fd0d55b28595db87eaa92.tar.xz serverdata-9f56fd8441670493d67fd0d55b28595db87eaa92.zip |
New random NPCs from Blue Sage household.
Diffstat (limited to 'npc/020-7-1/pagemakers.txt')
-rw-r--r-- | npc/020-7-1/pagemakers.txt | 76 |
1 files changed, 73 insertions, 3 deletions
diff --git a/npc/020-7-1/pagemakers.txt b/npc/020-7-1/pagemakers.txt index 427e170ee..7d1aa1a65 100644 --- a/npc/020-7-1/pagemakers.txt +++ b/npc/020-7-1/pagemakers.txt @@ -295,9 +295,79 @@ OnInit: 020-7-1,36,31,4 script Santeri NPC_BLUESAGEWORKER_MA,{ - npctalk3 l("I make glue with... not yeti claws, for sure."); - goodbye; - end; + function askQuestion; + .@q2=getq2(NivalisQuest_BlueSage); + mesn; + if (.@q2 & BS_PMGLUE) + mesq l("Thanks to you, our glue supply is replenished and we can repair those books."); + else + mesq l("Welcome. Are you an adventurer? I could use some help."); + + // Begin here + askQuestion(); + .@q2=getq2(NivalisQuest_BlueSage); + mes ""; + mesn; + mesq l("You see, we're working on repairing all of the damaged books and creating new ones for those that were lost."); + next; + mesn; + mesq l("Therefore we need a lot of glue, but our supplies are nearly used up. I need @@/@@ @@ as ingredient to make new glue.", countitem(WolvernTooth), 3, getitemlink(WolvernTooth)); + next; + mesn; + mesq l("Do you have that? I have the other materials but I couldn't get it... @@ are too dangerous, they are level @@ monsters.", getmonsterlink(Wolvern), strmobinfo(3,Wolvern)); + if (countitem(WolvernTooth) < 3) + close; + next; + if (askyesno() == ASK_NO) { + mes ""; + mesn; + mesq l("That's a pity."); + close; + } + mes ""; + + delitem SilkCocoon, 60; + setq2 NivalisQuest_BlueSage, .@q2|BS_PMGLUE; + getexp 3535, 215; // 20% from reference levels 36/16. It's part of main story. + // Exp reward will not change. It applies to Job Exp on same rate. + mesn; + mesq l("Great! Thank you!"); + close; + +function askQuestion { + .@qs=BSQuestion(getq(NivalisQuest_BlueSage)); + do { + .@q=getq(NivalisQuest_BlueSage); + .@q2=getq2(NivalisQuest_BlueSage); + next; + select + rif(!(.@q2 & BS_PMGLUE), any(l("Can I help you?"), l("I am. What heroic action is needed?"))), + 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("I'm just a lurker.")); + mes ""; + switch (@menu) { + case 2: + mesn; + mesq l("There was a visitor with a mask? I didn't notice. You see, I spend most of my time in the workshop, and concentrate on my work. There are other helpers who attend to the visitors. And hopefully keep them from disturbing my concentration."); + break; + case 3: + mesn; + mesq l("Oh, that's an interesting question. I was really surprised when I heard that he was responsible for the failure. I've worked together with him before, and I have to say, it really was a pleasure. He's very accurate and diligent, but also polite and helpful."); + next; + mesn; + mesq l("I really wonder what went wrong. I can't imagine Peetu messing up something so important."); + if (is_between(4, 7, .@q)) + setq1 NivalisQuest_BlueSage, .@q + 3; + break; + case 4: + mesn; + mesq l("Hm. Then please don't disturb me, I'm trying to concentrate."); + close; + } + } while (@menu != 1); + return; +} OnInit: .sex=G_MALE; |