diff options
-rw-r--r-- | npc/020-7-1/pagemakers.txt | 73 |
1 files changed, 40 insertions, 33 deletions
diff --git a/npc/020-7-1/pagemakers.txt b/npc/020-7-1/pagemakers.txt index 790f37b29..b521f85d9 100644 --- a/npc/020-7-1/pagemakers.txt +++ b/npc/020-7-1/pagemakers.txt @@ -20,37 +20,16 @@ // SLIME HUNTING QUEST 020-7-1,34,56,0 script Eevert NPC_BLUESAGEWORKER_MA,{ - .@q1=getq(NivalisQuest_BlueSage); + function askQuestion; .@q2=getq2(NivalisQuest_BlueSage); - if (.@q2 & BS_PMINK) - goto L_Done; mesn; - mesq l("Mh. I wonder how I'm expected to perform my task with this meager equipment. The new books will look pathetic."); -L_Main: + if (.@q2 & BS_PMINK) + mesq l("Thanks for your help with the inks! Now I'll be able to fulfill my tasks adequately. Some of these books were really valuable, and it's important to recreate them as good as possible."); + else + mesq l("Mh. I wonder how I'm expected to perform my task with this meager equipment. The new books will look pathetic."); next; - select - l("What is your problem?"), - rif(BSQuestion(.@q1) & BS_QVISITOR, l("Can you tell me anything about the visitor with the mask?") ), - rif(BSQuestion(.@q1) & BS_QHELPER, l("What's your opinion of Peetu and how he does his work?") ), - l("Not my problem."); + askQuestion(); mes ""; - switch (@menu) { - case 2: - mesn; - mesq l("A visitor? I don't really pay attention to visitors, unless it's someone notable."); - goto L_Main; - case 3: - mesn; - mesq l("Ah, Peetu. I really appreciate his sense for high quality work. The requirements to become a helper of a sage are already high, but Peetu is outstanding. He has a talent for magic and combined with his diligence, it's quite remarkable."); - next; - mesn; - mesq l("That's why I'm really confused about this situation, since he was the one performing the sealing of the slimes. I wonder what went wrong."); - if (is_between(4, 7, .@q)) - setq1 NivalisQuest_BlueSage, .@q + 3; - goto L_Main; - case 4: - close; - } mesn; mesq l("I'm doing the covers and illustrations for the new books we create from the pieces of the old ones."); next; @@ -89,7 +68,7 @@ L_Main: countitem(ArtichokeHerb) < 50 || countitem(MauveHerb) < 50 || countitem(MaggotSlime) < 10 || - countitem(DuckFeater) < 1) { + countitem(DuckFeather) < 1) { mesn; mesq l("Do you know how to count, maggot? %%5"); next; @@ -103,7 +82,7 @@ L_Main: delitem ArtichokeHerb, 50; delitem MauveHerb, 50; delitem MaggotSlime, 10; - delitem DuckFeater, 1; + delitem DuckFeather, 1; setq2 NivalisQuest_BlueSage, .@q2|BS_PMINK; 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 @@ -111,10 +90,38 @@ L_Main: // Besides, it gives Job Experience, which is not common. close; -L_Done: - mesn; - mesq l("Thanks for your help with the inks! Now I'll be able to fulfill my tasks adequately. Some of these books were really valuable, and it's important to recreate them as good as possible."); - close; +function askQuestion { + .@qs=BSQuestion(getq(NivalisQuest_BlueSage)); + do { + .@q=getq(NivalisQuest_BlueSage); + .@q2=getq2(NivalisQuest_BlueSage); + next; + select + rif(!(.@q2 & BS_PMINK), l("What is your problem?")), + 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("Not my problem.")); + mes ""; + switch (@menu) { + case 2: + mesn; + mesq l("A visitor? I don't really pay attention to visitors, unless it's someone notable."); + break; + case 3: + mesn; + mesq l("Ah, Peetu. I really appreciate his sense for high quality work. The requirements to become a helper of a sage are already high, but Peetu is outstanding. He has a talent for magic and combined with his diligence, it's quite remarkable."); + next; + mesn; + mesq l("That's why I'm really confused about this situation, since he was the one performing the sealing of the slimes. I wonder what went wrong."); + if (is_between(4, 7, .@q)) + setq1 NivalisQuest_BlueSage, .@q + 3; + break; + case 4: + close; + } + } while (@menu != 1); + return; +} OnInit: .sex=G_MALE; |