summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2022-01-16 18:19:12 -0300
committerJesusaves <cpntb1@ymail.com>2022-01-16 18:19:12 -0300
commit2607f9c325adcd91d4ce43745bcbecc546031a94 (patch)
treec6726f4060efbbb8a5d7ee5f1aff47d525926de8
parent75301fa3efefc00f6e95092ea76c013bc2336c17 (diff)
downloadserverdata-2607f9c325adcd91d4ce43745bcbecc546031a94.tar.gz
serverdata-2607f9c325adcd91d4ce43745bcbecc546031a94.tar.bz2
serverdata-2607f9c325adcd91d4ce43745bcbecc546031a94.tar.xz
serverdata-2607f9c325adcd91d4ce43745bcbecc546031a94.zip
Handle all outstanding flaws but testing still required (and ASAP)
-rw-r--r--db/re/mob_db.conf1
-rw-r--r--npc/001-14/ctrl.txt18
2 files changed, 16 insertions, 3 deletions
diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf
index 0ccd48fe0..d06e07abe 100644
--- a/db/re/mob_db.conf
+++ b/db/re/mob_db.conf
@@ -12316,6 +12316,7 @@ mob_db: (
Aggressive: true
Angry: true
TargetWeak: true
+ Assist: true
}
MoveSpeed: 360
AttackDelay: 1872
diff --git a/npc/001-14/ctrl.txt b/npc/001-14/ctrl.txt
index e86dd72e7..572ecce7d 100644
--- a/npc/001-14/ctrl.txt
+++ b/npc/001-14/ctrl.txt
@@ -320,9 +320,7 @@ OnInit:
next;
mesc l("Begin campaign?"), 1;
if (askyesno() == ASK_NO) close;
- // FIXME: Intercept death event or handle it better (a timer with map check?)
-
-OnStart:
+ addtimer 2500, instance_npcname("Hocus#MOLY0800")+"::OnCheck";
@map$ = getmap();
@moly_tick = gettimetick(2); // Will be used to determine score
@moly_score = 0; // Actually unused
@@ -598,6 +596,20 @@ OnWin:
// *: Distance is always at least ~50 tiles in a straight line
end;
+OnCheck:
+ if (@moly_chall != 8) end;
+ // Game Over
+ if (ispcdead() ||
+ getmap() != MAZE_MAP$) { // NOT a typo - starting square is OK
+ // Game Over!
+ dispbottom col(l("You have been disqualified - died or left the maze"), 1);
+ @moly_score = 0;
+ @moly_chall = 0;
+ end;
+ }
+ addtimer 2500, instance_npcname("Hocus#MOLY0800")+"::OnCheck";
+ end;
+
OnInit:
.distance=7;
end;