summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db/constants.conf28
-rw-r--r--db/quest_db.conf8
-rw-r--r--npc/020-7-1/janitors.txt18
-rw-r--r--npc/020-7-1/pagefinders.txt17
-rw-r--r--npc/020-7-1/pagemakers.txt42
-rw-r--r--npc/020-7/elias.txt4
6 files changed, 77 insertions, 40 deletions
diff --git a/db/constants.conf b/db/constants.conf
index b9e8928c6..018aa6341 100644
--- a/db/constants.conf
+++ b/db/constants.conf
@@ -4311,6 +4311,34 @@ constants_db: {
BS_PMBINDING: 2
BS_PMPAGE: 4
BS_PMGLUE: 8
+ // N - Npc
+ BS_NELIAS: 1
+ BS_NMIRO: 2
+ BS_NLENITA: 4
+ BS_NEEVERT: 8
+ BS_NJANIKA: 16
+ BS_NKULLERVO: 32
+ BS_NSANTERI: 64
+ BS_NPYRY: 128
+ BS_NNEA: 256
+ BS_NARVO: 512
+ BS_NKRISTIAN: 1024
+ BS_NMIRJAMI: 2048
+ BS_NENSIO: 4096
+ BS_NHENRIIKKA: 8192
+ BS_NTEUVO: 16384
+ BS_NOSKARI: 32768
+ BS_NPEETU: 65536
+ BS_NNIKOLAI: 131072
+ // S - Slime Nest
+ BS_SNEST1: 1
+ BS_SNEST2: 2
+ BS_SNEST3: 4
+ BS_SNEST4: 8
+ BS_SNEST5: 16
+ BS_SNEST6: 32
+ BS_SNEST7: 64
+ BS_SNEST8: 128
comment__: "Being actions"
ACTION_STAND: 0
diff --git a/db/quest_db.conf b/db/quest_db.conf
index 2d1dc57e1..cbd37fc1f 100644
--- a/db/quest_db.conf
+++ b/db/quest_db.conf
@@ -331,6 +331,14 @@ quest_db: (
Id: 117
Name: "NivalisQuest_BlueSageSlimes"
},
+{
+ Id: 118
+ Name: "NivalisQuest_BlueSagePagemaker"
+},
+{
+ Id: 119
+ Name: "NivalisQuest_BlueSagePagefinder"
+},
// ID 131 to 150: Frostia Quests
{
diff --git a/npc/020-7-1/janitors.txt b/npc/020-7-1/janitors.txt
index 637cd0821..8ee068754 100644
--- a/npc/020-7-1/janitors.txt
+++ b/npc/020-7-1/janitors.txt
@@ -67,7 +67,8 @@ OnInit:
function askQuestion {
do {
- .@qs=getq(NivalisQuest_BlueSage);
+ .@q=getq(NivalisQuest_BlueSage);
+ .@qs=BSQuestion(getq(NivalisQuest_BlueSage));
.@qt=getq2(NivalisQuest_BlueSageSlimes);
next;
if (.@qt >= 255) {
@@ -161,7 +162,8 @@ OnInit:
function askQuestion {
do {
- .@qs=getq(NivalisQuest_BlueSage);
+ .@q=getq(NivalisQuest_BlueSage);
+ .@qs=BSQuestion(getq(NivalisQuest_BlueSage));
.@qt=getq2(NivalisQuest_BlueSageSlimes);
next;
if (.@qt >= 255) {
@@ -198,7 +200,7 @@ function askQuestion {
mesq l("I tried to keep an eye on him after that, but when I got distracted by some newly arriving visitor he went over to the workshop again! Usually I enjoy my job, because I like talking to people, but this guy... was a pain, really.");
// It's safe in this context, don't worry
if (.@qs % 3 == 0)
- setq1 NivalisQuest_BlueSage, .@qs + 1;
+ setq1 NivalisQuest_BlueSage, .@q + 1;
break;
case 3:
mesn;
@@ -263,7 +265,8 @@ OnInit:
function askQuestion {
do {
- .@qs=getq(NivalisQuest_BlueSage);
+ .@q=getq(NivalisQuest_BlueSage);
+ .@qs=BSQuestion(getq(NivalisQuest_BlueSage));
.@qt=getq2(NivalisQuest_BlueSageSlimes);
next;
if (.@qt >= 255) {
@@ -292,7 +295,7 @@ function askQuestion {
mesq l("But still, he can't just walk in there, fiddle with the experiments and disturb the helpers doing their work.");
// It's safe in this context, don't worry
if (.@qs % 3 == 0)
- setq1 NivalisQuest_BlueSage, .@qs + 1;
+ setq1 NivalisQuest_BlueSage, .@q + 1;
break;
case 3:
mesn;
@@ -349,7 +352,8 @@ OnInit:
function askQuestion {
do {
- .@qs=getq(NivalisQuest_BlueSage);
+ .@q=getq(NivalisQuest_BlueSage);
+ .@qs=BSQuestion(getq(NivalisQuest_BlueSage));
.@qt=getq2(NivalisQuest_BlueSageSlimes);
next;
if (.@qt >= 255) {
@@ -383,7 +387,7 @@ function askQuestion {
mesq l("Visitors should keep away from those!");
// It's safe in this context, don't worry
if (.@qs % 3 == 0)
- setq1 NivalisQuest_BlueSage, .@qs + 1;
+ setq1 NivalisQuest_BlueSage, .@q + 1;
break;
case 3:
mesn;
diff --git a/npc/020-7-1/pagefinders.txt b/npc/020-7-1/pagefinders.txt
index f3b19e787..0a9defcee 100644
--- a/npc/020-7-1/pagefinders.txt
+++ b/npc/020-7-1/pagefinders.txt
@@ -6,13 +6,10 @@
// Responsible for recovering the lost pages
// helperBookpages*
//
-// NivalisQuest_BlueSage STRUCTURE
+// NivalisQuest_BlueSagePagefinder STRUCTURE
// FIELD 1:
-// INVESTIGATION
+// MAIN STATE
// FIELD 2:
-// BOOK MAKING QUEST
-// FIELD 3:
-// PAGE HUNTING QUEST
// nÂș of pages found (0~31)
020-7-1,36,39,4 script Ensio NPC_BLUESAGEWORKER_MB,{
@@ -58,8 +55,9 @@ OnInit:
function askQuestion {
do {
- .@qs=getq(NivalisQuest_BlueSage);
-| .@qt=getq3(NivalisQuest_BlueSage);
+ .@q=getq(NivalisQuest_BlueSage);
+ .@qs=BSQuestion(getq(NivalisQuest_BlueSage));
+ .@qt=getq3(NivalisQuest_BlueSage);
next;
if (.@qt >= 255) {
mesn;
@@ -151,8 +149,9 @@ OnInit:
function askQuestion {
do {
- .@qs=getq(NivalisQuest_BlueSage);
-| .@qt=getq3(NivalisQuest_BlueSage);
+ .@q=getq(NivalisQuest_BlueSage);
+ .@qs=BSQuestion(getq(NivalisQuest_BlueSage));
+ .@qt=getq3(NivalisQuest_BlueSage);
next;
if (.@qt >= 255) {
mesn;
diff --git a/npc/020-7-1/pagemakers.txt b/npc/020-7-1/pagemakers.txt
index 8cf8724fe..1158b62d6 100644
--- a/npc/020-7-1/pagemakers.txt
+++ b/npc/020-7-1/pagemakers.txt
@@ -6,9 +6,9 @@
// Workers which produces pages
// helperM*
-// NivalisQuest_BlueSage STRUCTURE
+// NivalisQuest_BlueSagePagemaker STRUCTURE
// FIELD 1:
-// INVESTIGATION
+// MAIN STATE
// FIELD 2:
// BOOK MAKING QUEST
// 1 - Illustrations delivered (BS_PMINK)
@@ -16,21 +16,19 @@
// 4 - Pages delivered (BS_PMPAGE)
// 8 - Glue delivered (BS_PMGLUE)
// =15: All items delivered
-// FIELD 3:
-// PAGE HUNTING QUEST
020-7-1,34,56,0 script Eevert NPC_BLUESAGEWORKER_MA,{
function askQuestion;
- .@q2=getq2(NivalisQuest_BlueSage);
+ .@qt=getq2(NivalisQuest_BlueSagePagemaker);
mesn;
- if (.@q2 & BS_PMINK)
+ if (.@qt & 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.");
// Begin here
askQuestion();
- .@q2=getq2(NivalisQuest_BlueSage);
+ .@qt=getq2(NivalisQuest_BlueSagePagemaker);
mes "";
mesn;
mesq l("I'm doing the covers and illustrations for the new books we create from the pieces of the old ones.");
@@ -85,7 +83,7 @@
delitem MauveHerb, 50;
delitem MaggotSlime, 10;
delitem DuckFeather, 1;
- setq2 NivalisQuest_BlueSage, .@q2|BS_PMINK;
+ setq2 NivalisQuest_BlueSagePagemaker, .@qt|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
// TO DO IT AT LEVEL 40. Exp reward will not change. It's main story, too.
@@ -98,10 +96,10 @@ function askQuestion {
.@qs=BSQuestion(getq(NivalisQuest_BlueSage));
do {
.@q=getq(NivalisQuest_BlueSage);
- .@q2=getq2(NivalisQuest_BlueSage);
+ .@qt=getq2(NivalisQuest_BlueSagePagemaker);
next;
select
- rif(!(.@q2 & BS_PMINK), l("What is your problem?")),
+ rif(!(.@qt & 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."));
@@ -159,16 +157,16 @@ OnInit:
020-7-1,44,56,0 script Janika NPC_BLUESAGEWORKER_FA,{
function askQuestion;
- .@q2=getq2(NivalisQuest_BlueSage);
+ .@qt=getq2(NivalisQuest_BlueSagePagemaker);
mesn;
- if (.@q2 & BS_PMBINDING)
+ if (.@qt & BS_PMBINDING)
mesq l("Thanks for the Silk Cocoons. With these the new books are going to be exquisite.");
else
mesq l("This is going to be difficult... oh, hello. I'm working on recreating some of the books that were destroyed.");
// Begin here
askQuestion();
- .@q2=getq2(NivalisQuest_BlueSage);
+ .@qt=getq2(NivalisQuest_BlueSagePagemaker);
mes "";
mesn;
mesq l("I need @@/@@ @@ for the book covers and binding of some of the more valuable books we're trying to recreate.", countitem(SilkCocoon), 60, getitemlink(SilkCocoon));
@@ -187,7 +185,7 @@ OnInit:
mes "";
delitem SilkCocoon, 60;
- setq2 NivalisQuest_BlueSage, .@q2|BS_PMBINDING;
+ setq2 NivalisQuest_BlueSagePagemaker, .@qt|BS_PMBINDING;
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.
@@ -200,10 +198,10 @@ function askQuestion {
.@qs=BSQuestion(getq(NivalisQuest_BlueSage));
do {
.@q=getq(NivalisQuest_BlueSage);
- .@q2=getq2(NivalisQuest_BlueSage);
+ .@qt=getq2(NivalisQuest_BlueSagePagemaker);
next;
select
- rif(!(.@q2 & BS_PMBINDING), l("Can I help you?")),
+ rif(!(.@qt & BS_PMBINDING), 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."));
@@ -296,16 +294,16 @@ OnInit:
020-7-1,36,31,4 script Santeri NPC_BLUESAGEWORKER_MA,{
function askQuestion;
- .@q2=getq2(NivalisQuest_BlueSage);
+ .@qt=getq2(NivalisQuest_BlueSagePagemaker);
mesn;
- if (.@q2 & BS_PMGLUE)
+ if (.@qt & 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);
+ .@qt=getq2(NivalisQuest_BlueSagePagemaker);
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.");
@@ -327,7 +325,7 @@ OnInit:
mes "";
delitem SilkCocoon, 60;
- setq2 NivalisQuest_BlueSage, .@q2|BS_PMGLUE;
+ setq2 NivalisQuest_BlueSagePagemaker, .@qt|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;
@@ -338,10 +336,10 @@ function askQuestion {
.@qs=BSQuestion(getq(NivalisQuest_BlueSage));
do {
.@q=getq(NivalisQuest_BlueSage);
- .@q2=getq2(NivalisQuest_BlueSage);
+ .@qt=getq2(NivalisQuest_BlueSagePagemaker);
next;
select
- rif(!(.@q2 & BS_PMGLUE), any(l("Can I help you?"), l("I am. What heroic action is needed?"))),
+ rif(!(.@qt & 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."));
diff --git a/npc/020-7/elias.txt b/npc/020-7/elias.txt
index 81ae625bb..2c60ce465 100644
--- a/npc/020-7/elias.txt
+++ b/npc/020-7/elias.txt
@@ -16,9 +16,9 @@
// 13 - STDBY OUTSIDE
// 14 - STDBY INSIDE
// FIELD 2:
-// BOOK MAKING QUEST
+// Bitwise (BS_QVISITOR)
// FIELD 3:
-// PAGE HUNTING QUEST
+// Bitwise (BS_QHELPER)
020-7,44,41,0 script #BlueSageEntry NPC_HIDDEN,1,1,{
OnTouch: