diff options
-rw-r--r-- | npc/019-2/guards.txt | 26 | ||||
-rw-r--r-- | npc/019-3/guards.txt | 11 | ||||
-rw-r--r-- | npc/023-2/mk.txt | 101 |
3 files changed, 132 insertions, 6 deletions
diff --git a/npc/019-2/guards.txt b/npc/019-2/guards.txt index 8a37d468d..8e0c74447 100644 --- a/npc/019-2/guards.txt +++ b/npc/019-2/guards.txt @@ -75,9 +75,25 @@ L_Veteran: close; L_MK: - mesn; - mesq l("Today at 16:30 UTC we are going to attack the Monster King by surprise. There will be no delays, so be there."); + if (gettime(3) != 18) { + mesn; + mesq l("Today at 16:30 UTC we are going to attack the Monster King by surprise. There will be no delays, so be there."); + } else { + mesn; + mesq l("Do you want to go against the Monster King now? The event will start 16:30 UTC sharply."); + 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::OnAdvise"); + closedialog; + } + } close; + // Misc L_Delay: mesn; @@ -97,10 +113,16 @@ OnHour00: $NLIB_DAY+=1; end; +OnClock1825: + if ($NLIB_DAY == 7) + announce "All players, Nivalis Liberation Day starting in five minutes.", bc_all | bc_npc; + end; + OnClock1830: if ($NLIB_DAY != 7) end; setmapflag("023-2",mf_bexp,200); + disablenpc "The Monster King#NLib"; end; } diff --git a/npc/019-3/guards.txt b/npc/019-3/guards.txt index e2a18771f..5c3c16420 100644 --- a/npc/019-3/guards.txt +++ b/npc/019-3/guards.txt @@ -5,6 +5,8 @@ // Nivalis Liberation Day NPC 019-3,128,2,0 script Guard#019-3.1 NPC_GUARD1,{ + if ($NLIB_DAY == 7) + goto L_MK; mesn; mesq l("Are you done yet?"); select @@ -39,10 +41,19 @@ closedialog; close; +L_MK: + mesn; + mesq l("Good luck hunting down the Monster King."); + close; + OnBegin: npctalk l("Begin!"); end; +OnAdvise: + npctalk l("You must be where the Monster King at 16:30 UTC sharply - no delays allowed!"); + end; + OnInit: .sex = G_MALE; .distance = 5; diff --git a/npc/023-2/mk.txt b/npc/023-2/mk.txt index c3007e185..b88e67633 100644 --- a/npc/023-2/mk.txt +++ b/npc/023-2/mk.txt @@ -4,9 +4,14 @@ // Description: // Nivalis Liberation Day +// The Walking Monster King 023-2,121,35,0 script The Monster King#NLib NPC_MONSTERKING,{ end; +OnTouch: + percentheal -100, -100; + end; + OnInit: .sex = G_MALE; .distance = 5; @@ -26,12 +31,10 @@ OnHour00: case 4: movenpc(.name$, 102, 63, DIR_WEST); break; case 5: - movenpc(.name$, 81, 59, DIR_EAST); break; + movenpc(.name$, 81, 59, DIR_NORTH); break; case 6: - movenpc(.name$, 76, 48, DIR_WEST); break; - case 7: movenpc(.name$, 53, 53, DIR_SOUTH); break; - case 8: + case 7: movenpc(.name$, 36, 99, DIR_SOUTH); break; default: channelmes("#world", "A bug happened: Monster King # Nivalis Liberation Day - Value Out of Range."); disablenpc .name$; break; @@ -40,3 +43,93 @@ OnHour00: end; } + +// Floor triggers +023-2,121,35,0 script #NLIB_T01 NPC_HIDDEN,1,2,{ + +OnTouch: + if ($NLIB_DAY == 1) { + @QNL3=1; + dispbottom l("I've found the Monster King."); + } + end; +} + + +023-2,110,36,0 script #NLIB_T02 NPC_HIDDEN,2,2,{ + +OnTouch: + if ($NLIB_DAY == 2) { + @QNL3=1; + dispbottom l("I've found the Monster King."); + } else if ($NLIB_DAY < 2) { + slide 114, 36; + dispbottom l("I should not veer off too much the path."); + } + end; +} + +023-2,105,50,0 script #NLIB_T03 NPC_HIDDEN,2,2,{ + +OnTouch: + if ($NLIB_DAY == 3) { + @QNL3=1; + dispbottom l("I've found the Monster King."); + } else if ($NLIB_DAY < 3) { + slide 104, 48; + dispbottom l("I should not veer off too much the path."); + } + end; +} + +023-2,104,62,0 script #NLIB_T04 NPC_HIDDEN,0,0,{ + +OnTouch: + if ($NLIB_DAY == 4) { + @QNL3=1; + dispbottom l("I've found the Monster King."); + } else if ($NLIB_DAY < 4) { + slide 104, 61; + dispbottom l("I should not veer off too much the path."); + } + end; +} + +023-2,86,59,0 script #NLIB_T05 NPC_HIDDEN,2,5,{ + +OnTouch: + if ($NLIB_DAY == 5) { + @QNL3=1; + dispbottom l("I've found the Monster King."); + } else if ($NLIB_DAY < 5) { + slide 91, 61; + dispbottom l("I should not veer off too much the path."); + } + end; +} + +023-2,53,49,0 script #NLIB_T06 NPC_HIDDEN,0,5,{ + +OnTouch: + if ($NLIB_DAY == 6) { + @QNL3=1; + dispbottom l("I've found the Monster King."); + } else if ($NLIB_DAY < 6) { + slide 55, 48; + dispbottom l("I should not veer off too much the path."); + } + end; +} + +023-2,35,90,0 script #NLIB_T07 NPC_HIDDEN,0,2,{ + +OnTouch: + if (gettime(2) < 25 || gettime(2) > 35) { + slide 39, 89; + dispbottom l("I should not go ahead... yet."); + } + end; +} + + +// Event |