diff options
Diffstat (limited to 'npc')
-rw-r--r-- | npc/003-0/mainquest.txt | 9 | ||||
-rw-r--r-- | npc/003-1/magic.txt | 5 | ||||
-rw-r--r-- | npc/003-2/lua.txt | 9 | ||||
-rw-r--r-- | npc/functions/hub.txt | 6 |
4 files changed, 24 insertions, 5 deletions
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) |