From eae5b0255b6f895abbdfa26127983d99fd479c18 Mon Sep 17 00:00:00 2001
From: Jesusaves <cpntb1@ymail.com>
Date: Wed, 10 Mar 2021 16:33:13 -0300
Subject: [FoS] Fix several stuffs including exploits, add monster population
 of Artis. This is not a coincidence, you'll understand in Migglemire.

---
 npc/029-0/_import.txt |  1 +
 npc/029-0/_mobs.txt   | 10 ++++++++++
 npc/029-0/elora.txt   |  3 +++
 npc/029-0/sakar.txt   | 32 +++++++++++++++++++++++++++++++-
 npc/029-0/warps.txt   |  4 +++-
 5 files changed, 48 insertions(+), 2 deletions(-)
 create mode 100644 npc/029-0/_mobs.txt

(limited to 'npc/029-0')

diff --git a/npc/029-0/_import.txt b/npc/029-0/_import.txt
index a84cdfd12..e10e238de 100644
--- a/npc/029-0/_import.txt
+++ b/npc/029-0/_import.txt
@@ -1,5 +1,6 @@
 // Map 029-0: Artis
 // This file is generated automatically. All manually added changes will be removed when running the Converter.
+"npc/029-0/_mobs.txt",
 "npc/029-0/elora.txt",
 "npc/029-0/mobs.txt",
 "npc/029-0/sakar.txt",
diff --git a/npc/029-0/_mobs.txt b/npc/029-0/_mobs.txt
new file mode 100644
index 000000000..5a144e18f
--- /dev/null
+++ b/npc/029-0/_mobs.txt
@@ -0,0 +1,10 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 029-0: Artis mobs
+029-0,95,85,59,53	monster	Mouboo Slime	1201,12,90000,35000
+029-0,121,47,78,30	monster	Mouboo	1023,36,90000,35000
+029-0,71,99,37,45	monster	Mouboo	1023,36,90000,35000
+029-0,60,48,31,28	monster	Alpha Mouboo	1056,4,90000,35000
+029-0,34,70,16,21	monster	Bloody Mouboo	1119,3,90000,35000
+029-0,187,40,16,21	monster	Moubi	1038,3,240000,35000
+029-0,113,47,95,22	monster	Mineral Bif	1058,12,90000,35000
+029-0,33,112,11,36	monster	Mineral Bif	1058,9,90000,35000
diff --git a/npc/029-0/elora.txt b/npc/029-0/elora.txt
index 90edc32c8..e86449414 100644
--- a/npc/029-0/elora.txt
+++ b/npc/029-0/elora.txt
@@ -63,6 +63,9 @@ OnInit:
 029-0,90,130,0	duplicate(Zitoni)	Zitoni#FoS	NPC_RUMLY
 029-0,132,51,0	duplicate(Cynric)	Cynric#FoS	NPC_LLOYD
 029-0,58,118,0	duplicate(Neko)	Neko#FoS1	NPC_KAYLO
+// TODO: Custom shop for ores and blueprints
+// TODO: Mercenary Shop
+// TODO: Magic School NPCs
 
 // 029-1
 029-1,35,88,0	duplicate(Neko)	Neko#FoS2	NPC_KAYLO
diff --git a/npc/029-0/sakar.txt b/npc/029-0/sakar.txt
index 9c8ac24a7..2373698a5 100644
--- a/npc/029-0/sakar.txt
+++ b/npc/029-0/sakar.txt
@@ -29,7 +29,10 @@ OnInit:
     end;
 }
 
-029-0,88,33,0	script	Andrei Sakar#FoS298	NPC_ANDREI,{
+029-0,88,33,0	script	Andrei Sakar#FoS290	NPC_ANDREI,{
+    function prologue;
+    if (!FIRESOFSTEAM_CD)
+        prologue();
     mesn;
     mesq l("Do you want to advance?");
     next;
@@ -46,6 +49,33 @@ OnInit:
             cwarp "029-8", 51, 174;
     }
     close;
+
+function prologue {
+    mesn;
+    mesq l("Thanks for attending my call. As you can clearly see, the town is deserted; We only have our own staff in this town.");
+    next;
+    mesn;
+    mesq l("They set up shop in the whole town, so if you are in need of upgrading your gear or buying health food, it might be a good idea to pay them a visit.");
+    next;
+    mesn;
+    mesq l("Now, we're hot on the trails of whatever is the reason for the town to be so empty. We blocked this road so the town is not overrun by the monsters outside.");
+    next;
+    mesn;
+    mesq l("We've traced them to the Dark Forest, our goal is to destroy every raider there and defeat whoever is behind this tragedy. All that while keeping an eye open for survivors.");
+    next;
+    mesn;
+    mesq l("After all the monsters in an area are defeated, they'll respawn at once. I know, that's not good, but well, nothing that can be done about it.");
+    next;
+    mesn;
+    mesq l("Anyway, after that I'll use my magic, so everyone can rest after that until I finish, or keep killing the new monsters for experience and drops.");
+    next;
+    mesn;
+    mesq l("Are you ready? There will be a long path ahead of us until this mistery is solved.");
+    FIRESOFSTEAM_CD=gettimetick(2);
+    next;
+    return;
+}
+
 OnInit:
     .distance=5;
     end;
diff --git a/npc/029-0/warps.txt b/npc/029-0/warps.txt
index deda3f8ae..714560b98 100644
--- a/npc/029-0/warps.txt
+++ b/npc/029-0/warps.txt
@@ -9,8 +9,10 @@
 
 // FiresOfSteam_Warp(ID)
 function	script	FiresOfSteam_Warp	{
-    if ($FIRESOFSTEAM < getarg(0))
+    if ($FIRESOFSTEAM < getarg(0)) {
+        dispbottom l("Monsters remaining: %s", fnum(mobcount(getmap(), "all")));
         end;
+    }
     if ($FIRESOFSTEAM > getarg(0))
         return true;
     if ($FIRESOFSTEAM_CD > gettimetick(2)) {
-- 
cgit v1.2.3-70-g09d2