From a02292994ca10c523def79aec6c6ff731839da62 Mon Sep 17 00:00:00 2001
From: Jesusaves <cpntb1@ymail.com>
Date: Fri, 28 Feb 2020 03:47:38 -0300
Subject: I give up. Connect MQ2 back to system with a few lame error messages,
 finish Lua, and it is "good enough".

---
 npc/003-0/mainquest.txt | 9 +++++++++
 npc/003-1/magic.txt     | 5 +++++
 npc/003-2/lua.txt       | 9 ++++-----
 npc/functions/hub.txt   | 6 ++++++
 4 files changed, 24 insertions(+), 5 deletions(-)

(limited to 'npc')

diff --git a/npc/003-0/mainquest.txt b/npc/003-0/mainquest.txt
index f65ceb057..1b1c79ed1 100644
--- a/npc/003-0/mainquest.txt
+++ b/npc/003-0/mainquest.txt
@@ -51,13 +51,21 @@ OnBegin:
     // At this time they are utterly deadly. You could use a skill to
     // disable them... Perhaps... A grenade?
     dispbottom col(l("SCRIPT ERROR (%s/%s)", .@m$, .@n$), 1);
+    dispbottom l("An error happened: unitwalk failed");
+    dispbottom l("An error happened: Unable to initialize timer");
+    dispbottom l("An error happened: Unable to spawn: 'Energy Ball'");
     end;
 
 OnAssassinDefeat:
     .@m$=getmap();
     .@n$=instance_npcname(.name$);
     delcells "MQ2Wall"+getcharid(0);
+    LUA_ASKED_TO_SAVE_PROFESSOR=false;
     dispbottom col(l("SCRIPT ERROR (%s/%s)", .@m$, .@n$), 1);
+    if (is_night())
+        dispbottom l("An error happened: professor_thankyou() error");
+    else
+        dispbottom l("An error happened: mission_well_done() error");
     end;
 
 OnInit:
@@ -77,6 +85,7 @@ OnInstanceInit:
     end;
 
 OnTouchNPC:
+    npctalk l("An error happened: professor_was_assasinated() error");
     npctalk ("SCRIPT ERROR (OnTouch Game Over)");
     end;
 
diff --git a/npc/003-1/magic.txt b/npc/003-1/magic.txt
index fada53a37..3eb936703 100644
--- a/npc/003-1/magic.txt
+++ b/npc/003-1/magic.txt
@@ -24,6 +24,11 @@ OnTouch:
 		    instance_init(.@inst);
             LUA_ASKED_TO_SAVE_PROFESSOR=.@inst;
         }
+        /* else {
+            // Instance already exists: You've failed previously?
+		    instance_set_timeout(900, 900, .@inst);
+        }
+        */
         warp .@mapn$, 48, 51;
         end;
     }
diff --git a/npc/003-2/lua.txt b/npc/003-2/lua.txt
index 77208ca65..fda0c7ace 100644
--- a/npc/003-2/lua.txt
+++ b/npc/003-2/lua.txt
@@ -578,19 +578,18 @@ function luaCheckTask5 {
 // Then we jump to L_Complete
 // When you finish the last quest from Lua
 L_Finish:
-    inventoryplace MercBoxAA, 1, TreasureKey, 1;
+    inventoryplace TreasureKey, 1;
     getexp BaseLevel*60, JobLevel*10; // Reference Levels: (20, 6)
     setq General_Narrator, 3, 0;
-    getitem MercBoxAA, 1;
     getitem TreasureKey, 1;
     mesn;
-    mesq l("Great job! You can keep these items, they will be crucial to your journey.");
+    mesq l("Well done! I hope no more of those assassins show up. I'm afraid I cannot give you a proper reward, but...");
     next;
     mesn;
-    mesq l("I'll also give you a @@. Open it to get a random Mercenary Card.", getitemlink(MercBoxAA));
+    mesq l("Ah, you might have seen a treasure chest on the mines. There are several of these chests to loot, and loot again! Here is a @@. Try it!", getitemlink(TreasureKey));
     next;
     mesn;
-    mesq l("Ah, you might have seen a treasure chest on the mines. There are several of these chests to loot, and loot again! Here is a @@. Try it!", getitemlink(TreasureKey));
+    mesq l("Hopefully, you'll find something interesting on it to serve as a payment. It's up to luck, I guess....");
     next;
 L_Complete:
     mesn;
diff --git a/npc/functions/hub.txt b/npc/functions/hub.txt
index 8367d9bdf..e38a072e3 100644
--- a/npc/functions/hub.txt
+++ b/npc/functions/hub.txt
@@ -84,6 +84,12 @@ function	script	HUB_Logout	{
     if (.@mapa$ == "020-7-1") {
         callfunc("BSClearNest", @nestid);
     }
+    // Died or logged out on Player Story 2 - Magic School Port
+    if (compare(.@mapa$, "0030")) {
+        if (@ASSASSIN > 0)
+            delcells "MQ2Wall"+getcharid(0);
+        killmonsterall(getmap());
+    }
     // Died or logged out on Player Story 5 - Forgotten Throne Room
     if (compare(.@mapa$, "hmc")) {
         if (@instid > 0)
-- 
cgit v1.2.3-70-g09d2