Yeah I was just wondering if I can customize the status line read out on ZILF 0.7 instead of
LOCATION SCORE MOVES
like classic Infocom games, but to a more like
LOCATION SCORE: 0/250 (0 being the current score, 250 being the max fixed score).
Yeah I was just wondering if I can customize the status line read out on ZILF 0.7 instead of
LOCATION SCORE MOVES
like classic Infocom games, but to a more like
LOCATION SCORE: 0/250 (0 being the current score, 250 being the max fixed score).
You can do this, on version 4 and up, by replacing the UPDATE-STATUS-LINE routine defined in parser.zil. Something like this:
<SET REDEFINE T>
<ROUTINE UPDATE-STATUS-LINE ("AUX" WIDTH)
<SCREEN 1>
<HLIGHT ,H-INVERSE>
<FAKE-ERASE>
<TELL !\ >
<COND (,HERE-LIT <TELL D ,HERE>)
(ELSE <TELL %,DARKNESS-STATUS-TEXT>)>
<SET WIDTH <LOWCORE SCRH>>
<CURSET 1 <- .WIDTH 15>>
<TELL "Score: " N ,SCORE "/250">
<SCREEN 0>
<HLIGHT ,H-NORMAL>>
Put that somewhere after your <INSERT-FILE "parser">
line so it’ll replace the library function.
On version 3, you can’t really customize the status line, because it’s drawn by the interpreter, but you can use <VERSION ZIP TIME>
to make it show up as hours/minutes instead of score/turns.