summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
Diffstat (limited to 'npc')
-rw-r--r--npc/003-3/malindou.txt2
-rw-r--r--npc/019-2/guards.txt18
-rw-r--r--npc/019-3/guards.txt10
3 files changed, 27 insertions, 3 deletions
diff --git a/npc/003-3/malindou.txt b/npc/003-3/malindou.txt
index 340be1d1a..8ad9b44a2 100644
--- a/npc/003-3/malindou.txt
+++ b/npc/003-3/malindou.txt
@@ -135,6 +135,8 @@ OnInit:
$NLIB_HIGHTIME=0;
$NLIB_HIGHNAME$="";
addmapmask "019-3", MASK_MATTACK;
+ setmapflagnosave("019-3", "000-1", 22, 22);
+ setmapflag("019-3",mf_bexp,25);
$UPDATE=1539721040;
debugmes "";
debugmes "* SQL Upgrade (no effect on new installations)";
diff --git a/npc/019-2/guards.txt b/npc/019-2/guards.txt
index 127686cb4..8a37d468d 100644
--- a/npc/019-2/guards.txt
+++ b/npc/019-2/guards.txt
@@ -35,6 +35,8 @@
$NLIB_DAY=1;
$NLIB_HIGHTIME=0;
$NLIB_HIGHNAME$="";
+ setmapflagnosave("019-3", "000-1", 22, 22);
+ setmapflag("019-3",mf_bexp,25);
channelmes("#world", "Nivalis Liberation Day has started.");
announce "Nivalis Liberation Day has started.", bc_all|bc_npc;
}
@@ -57,6 +59,19 @@ L_Veteran:
if ($NLIB_DAY >= 7) goto L_MK;
mesn;
mesq l("Hey, you! We need help to find the Monster King.");
+ next;
+ mesn;
+ mesq l("Could you head deep in the woods and track him down?");
+ if (askyesno() == ASK_YES) {
+ // Control if you already found the Monster King
+ @QNL3=0;
+ // Begin quest. Logout/Death will cause loss of the current day.
+ setq1 Q_NivalisLibday, $NLIB_DAY;
+ setq3 Q_NivalisLibday, gettimetick(2);
+ warp "019-3", any(128, 129, 130, 131, 132), any(24, 25, 26, 27);
+ doevent("Guard#019-3.1::OnBegin");
+ closedialog;
+ }
close;
L_MK:
@@ -83,8 +98,9 @@ OnHour00:
end;
OnClock1830:
- if (!$NLIB_DAY)
+ if ($NLIB_DAY != 7)
end;
+ setmapflag("023-2",mf_bexp,200);
end;
}
diff --git a/npc/019-3/guards.txt b/npc/019-3/guards.txt
index 7dbd0f9ee..385426ec9 100644
--- a/npc/019-3/guards.txt
+++ b/npc/019-3/guards.txt
@@ -8,7 +8,7 @@
mesn;
mesq l("Are you done yet?");
select
- rif(0, l("Yes")),
+ rif(@QNL3, l("Yes")),
l("No");
if (@menu == 2)
close;
@@ -19,8 +19,10 @@
.@q2=getq2(Q_NivalisLibday);
.@q3=getq3(Q_NivalisLibday);
- // TODO: Calculate score
+ // Calculate score (You have 3 minutes)
.@score=0;
+ .@time=gettimetick(2);
+ .@score+=max(180-(.@time-.@q3), 0)/5;
// Update Total Score
setq2 Q_NivalisLibday, .@q2+.@score;
@@ -37,6 +39,10 @@
closedialog;
close;
+OnBegin:
+ npctalk l("Begin!");
+ end;
+
OnInit:
.sex = G_MALE;
.distance = 5;