diff options
-rw-r--r-- | npc/003-3/malindou.txt | 2 | ||||
-rw-r--r-- | npc/019-2/guards.txt | 18 | ||||
-rw-r--r-- | npc/019-3/guards.txt | 10 |
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; |