From 841331bf156ebaece2b4c5cc5179a0a4d3662df8 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Mon, 17 Jan 2022 08:59:30 -0300 Subject: Maze Race is now working. Scores below 5 seconds are disregarded --- npc/001-14/ctrl.txt | 9 ++++++--- npc/001-14/hocus.txt | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'npc/001-14') diff --git a/npc/001-14/ctrl.txt b/npc/001-14/ctrl.txt index 572ecce7d..7b8386497 100644 --- a/npc/001-14/ctrl.txt +++ b/npc/001-14/ctrl.txt @@ -308,7 +308,6 @@ OnInit: } ///////////////////////////////////////////////////////////////////////////////// -// FIXME ยป Testing required 001-14,39,114,0 script Hocus#MOLY0800 NPC_BLACKWIZARD,{ if (@moly_chall) end; mes ".:: " + l("Maze Race Challenge") + ":: ."; @@ -330,7 +329,7 @@ OnInit: .@mx=getmapinfo(MAPINFO_SIZE_X, MAZE_MAP$)-20; .@my=getmapinfo(MAPINFO_SIZE_Y, MAZE_MAP$)-20; .@tl=(20-.@mx)*(20-.@my) * 3 / 10; // Total tiles + collision guess - .@tl=.@tl / rand2(9,14) + 1; // Monster density is a bit random + .@tl=.@tl / rand2(12,16) + 1; // Monster density is a bit random /* *** Copied from 006-5/groata.txt & 018-2-2/main.txt! *** */ /* ********** Spawn monsters based on your level ********** */ @@ -582,6 +581,7 @@ OnInit: } while (!checknpccell(MAZE_MAP$, .@x, .@y, cell_chkpass)); warp MAZE_MAP$, .@x, .@y; + closeclientdialog; end; OnWin: @@ -590,7 +590,10 @@ OnWin: @moly_score = gettimetick(2) - @moly_tick; if (@moly_score < 8) end; // This is impossible*, don't even bother dispbottom l("End! Score this time: %s", FuzzyTime(@moly_tick)); - FYMOLY_RACERS = min(FYMOLY_RACERS, @moly_score); + if (FYMOLY_RACERS >= 8) + FYMOLY_RACERS = min(FYMOLY_RACERS, @moly_score); + else + FYMOLY_RACERS = @moly_score; @moly_score = 0; @moly_chall = 0; // *: Distance is always at least ~50 tiles in a straight line diff --git a/npc/001-14/hocus.txt b/npc/001-14/hocus.txt index 93b21c643..29062ec21 100644 --- a/npc/001-14/hocus.txt +++ b/npc/001-14/hocus.txt @@ -127,7 +127,7 @@ OnHour1759: .@nb = query_sql("SELECT c.name, i.value FROM `char_reg_num_db` AS i, `char` AS c WHERE i.key='FYMOLY_ALCHMY' AND i.char_id=c.char_id ORDER BY i.value DESC LIMIT 10", $@moly05_n$, $@moly05_v); .@nb = query_sql("SELECT c.name, i.value FROM `char_reg_num_db` AS i, `char` AS c WHERE i.key='FYMOLY_MPWLVL' AND i.char_id=c.char_id ORDER BY i.value DESC LIMIT 10", $@moly06_n$, $@moly06_v); .@nb = query_sql("SELECT c.name, i.value FROM `char_reg_num_db` AS i, `char` AS c WHERE i.key='FYMOLY_MANAXP' AND i.char_id=c.char_id ORDER BY i.value DESC LIMIT 10", $@moly07_n$, $@moly07_v); - .@nb = query_sql("SELECT c.name, i.value FROM `char_reg_num_db` AS i, `char` AS c WHERE i.key='FYMOLY_RACERS' AND i.value > 0 AND i.char_id=c.char_id ORDER BY i.value ASC LIMIT 10", $@moly08_n$, $@moly08_v); // Oddball: less is more + .@nb = query_sql("SELECT c.name, i.value FROM `char_reg_num_db` AS i, `char` AS c WHERE i.key='FYMOLY_RACERS' AND i.value > 5 AND i.char_id=c.char_id ORDER BY i.value ASC LIMIT 10", $@moly08_n$, $@moly08_v); // Oddball: less is more .@nb = query_sql("SELECT c.name, i.value FROM `char_reg_num_db` AS i, `char` AS c WHERE i.key='FYMOLY_HOCUSM' AND i.char_id=c.char_id ORDER BY i.value DESC LIMIT 10", $@moly09_n$, $@moly09_v); .@nb = query_sql("SELECT c.name, i.value FROM `char_reg_num_db` AS i, `char` AS c WHERE i.key='FYMOLY_SURVIV' AND i.char_id=c.char_id ORDER BY i.value DESC LIMIT 10", $@moly10_n$, $@moly10_v); .@nb = query_sql("SELECT c.name, i.value FROM `char_reg_num_db` AS i, `char` AS c WHERE i.key='FYMOLY_FRIEND' AND i.char_id=c.char_id ORDER BY i.value DESC LIMIT 10", $@moly11_n$, $@moly11_v); -- cgit v1.2.3-60-g2f50