summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--npc/003-3/malindou.txt1
-rw-r--r--npc/019-2/guards.txt4
-rw-r--r--npc/023-2/mk.txt46
3 files changed, 35 insertions, 16 deletions
diff --git a/npc/003-3/malindou.txt b/npc/003-3/malindou.txt
index 9acbba5ae..e3b7e5351 100644
--- a/npc/003-3/malindou.txt
+++ b/npc/003-3/malindou.txt
@@ -139,6 +139,7 @@ OnInit:
setmapflagnosave("020-1", "000-1", 22, 22);
setmapflag("019-3",mf_bexp,25);
setmapflag("020-1",mf_bexp,150);
+ enablenpc "Lightbringer#NLib";
$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 af1a162bc..7dcf8277b 100644
--- a/npc/019-2/guards.txt
+++ b/npc/019-2/guards.txt
@@ -39,6 +39,7 @@
setmapflagnosave("020-1", "000-1", 22, 22);
setmapflag("019-3",mf_bexp,25);
setmapflag("020-1",mf_bexp,150);
+ enablenpc "Lightbringer#NLib";
channelmes("#world", "Nivalis Liberation Day has started.");
announce "Nivalis Liberation Day has started.", bc_all|bc_npc;
}
@@ -132,8 +133,7 @@ OnClock1830:
if ($NLIB_DAY != 7)
end;
setmapflag("023-2",mf_bexp,200);
- disablenpc "The Monster King#NLib";
-
+ donpcevent("The Monster King#NLib::OnBegin");
end;
}
diff --git a/npc/023-2/mk.txt b/npc/023-2/mk.txt
index 0fdfb0154..5d59130d3 100644
--- a/npc/023-2/mk.txt
+++ b/npc/023-2/mk.txt
@@ -48,24 +48,36 @@ L_Finish:
// Just being bigger is not enough. Must be over the double for the advantage draw (about 1 player for 10m)
if (.victory_count > (.defeat_count*2)) {
announce "The fight ends in draw! The Monster King did accomplish what he set, though...", bc_all|bc_npc;
- $MANA_BINT-=1;
- $MANA_BLVL-=1;
- $MANA_JLVL+=1;
+ channelmes("#world", "Congratulations for the draw, that was a good fight.");
+ channelmes("#world", "The Monster King stole whatever he wanted and left.");
+ channelmes("#world", "Call @Jesusalva or @Saulc to increase drop rates during the day :o");
} else if (.victory_count < 100) { // 1 player for 5 minutes is enough to prevent this loss
announce "The Monster King, after moping the floor with the players, accomplish what he set, and left...", bc_all|bc_npc;
- $MANA_BINT+=1;
- $MANA_BLVL+=1;
- $MANA_JLVL+=1;
- } else {
+ channelmes("#world", "The players failed miserably. Getting magic is now permanently harder.");
+ $MANA_BLVL+=5;
+ $MANA_JLVL+=5;
+ } else {
announce "The fight ends in draw, with advantage to the Monster King...", bc_all|bc_npc;
- $MANA_BINT+=1;
- $MANA_BLVL-=1;
- $MANA_JLVL+=1;
+ channelmes("#world", "The players weren't capable to really harm the Monster King.");
}
L_Finish2:
killmonsterall("023-2");
.wcycle=0;
maptimer("023-2", 10, "The Monster King#NLib::OnReturn");
+ channelmes("#world", "*FINAL SCORE - PLAYERS "+.victory_count+" : "+.defeat_count+" MONSTERS*");
+
+ // Clean up the event
+ $NIVALIS_LIBDATE=gettimetick(2);
+ $NLIB_DAY=0;
+ $NLIB_HIGHTIME=0;
+ $NLIB_HIGHNAME$="";
+ disablenpc "Lightbringer#NLib";
+
+ removemapflag("019-3", mf_bexp);
+ removemapflag("019-3", mf_nosave);
+ removemapflag("020-1", mf_bexp);
+ removemapflag("020-1", mf_nosave);
+ removemapflag("023-2", mf_bexp);
stopnpctimer;
end;
@@ -85,15 +97,19 @@ OnTimer3000:
} else if (.wcycle % 30 == 18) {
areamonster "023-2", 21, 109, 31, 114, "Monster", any(BlackSlime, BlueSlime, SlimeBlast), 1; // PS. Drop “Demure Dark Soul” ¬.¬
}
+ } else if (.wcycle % 60 == 0) {
+ mapannounce "023-2", str(.wcycle/60)+" minute(s) remaining";
+ }
if (.wcycle >= 900) goto L_Finish;
initnpctimer;
end;
OnVictory:
+ channelmes("#world", "The Monster King was defeated by players, and had to flee!");
+ channelmes("#world", "All magic ranks can be obtained with 10 levels and 10 int points less than before!");
announce "Players have defeated the Monster King! He fleed from the cave after leaving a decoy!", bc_all|bc_npc;
$MANA_BINT-=10;
$MANA_BLVL-=10;
- $MANA_JLVL-=5;
goto L_Finish2;
end;
@@ -101,9 +117,11 @@ OnBegin:
.defeat_count=0;
.victory_count=0;
.wcycle=0;
- announce "The fight against the Monster King ends in 15 minutes. If he is forced to flee, that'll result as victory.", bc_all|bc_npc;
- announce "Each cycle there are players fighting against him will result in victory points. The opposite will result in defeat points.", bc_all|bc_npc;
- announce "More players fighting will result in more victory points. This may affect drastically the result.", bc_all|bc_npc;
+ channelmes("#world", "The fight against the Monster King ends in 15 minutes. If he is forced to flee, that'll result as victory.");
+ channelmes("#world", "Each cycle there are players fighting against him will result in victory points. The opposite will result in defeat points.");
+ channelmes("#world", "More players fighting will result in more victory points. This may affect drastically the result.");
+ channelmes("#world", "Defeat, decided by a certain threshold of points, will result in MAGIC BEING PERMANENTLY HARDER TO OBTAIN.");
+ announce "The Alliance attacks the Monster King! 15 minutes! Rules in #world", bc_all|bc_npc;
movenpc(.name$, 0, 0);
monster("023-2", 24, 111, "The Monster King", MonsterKing, 1, "The Monster King#NLib::OnVictory");
monster("023-2", 30, 109, "Andrei Sakar", AndreiSakar, 1);