Fix invisible gold symbol in status lines
This commit is contained in:
@@ -438,6 +438,7 @@ if was possible to leash an adjacent pet while engulfed
|
|||||||
if leash or unleash attempt was directed at "remembered, unseen monster" glyph
|
if leash or unleash attempt was directed at "remembered, unseen monster" glyph
|
||||||
and yielded "there's no creature there", the glyph wasn't removed
|
and yielded "there's no creature there", the glyph wasn't removed
|
||||||
wizmode level teleport menu indicates on what level you currently are
|
wizmode level teleport menu indicates on what level you currently are
|
||||||
|
fix invisible gold symbol in status line when S_coin was set to space
|
||||||
|
|
||||||
|
|
||||||
Fixes to Post-3.6.0 Problems that Were Exposed Via git Repository
|
Fixes to Post-3.6.0 Problems that Were Exposed Via git Repository
|
||||||
|
|||||||
@@ -142,6 +142,7 @@ E int NDECL(getbones);
|
|||||||
/* ### botl.c ### */
|
/* ### botl.c ### */
|
||||||
|
|
||||||
E char *NDECL(do_statusline1);
|
E char *NDECL(do_statusline1);
|
||||||
|
E void NDECL(check_gold_symbol);
|
||||||
E char *NDECL(do_statusline2);
|
E char *NDECL(do_statusline2);
|
||||||
E int FDECL(xlev_to_rank, (int));
|
E int FDECL(xlev_to_rank, (int));
|
||||||
E int FDECL(title_to_mon, (const char *, int *, int *));
|
E int FDECL(title_to_mon, (const char *, int *, int *));
|
||||||
|
|||||||
@@ -191,6 +191,7 @@ struct instance_flags {
|
|||||||
* behaviour of various NetHack functions and probably warrant
|
* behaviour of various NetHack functions and probably warrant
|
||||||
* a structure of their own elsewhere some day.
|
* a structure of their own elsewhere some day.
|
||||||
*/
|
*/
|
||||||
|
boolean invis_goldsym; /* gold symbol is ' '? */
|
||||||
int parse_config_file_src; /* hack for parse_config_line() */
|
int parse_config_file_src; /* hack for parse_config_line() */
|
||||||
int in_lava_effects; /* hack for Boots_off() */
|
int in_lava_effects; /* hack for Boots_off() */
|
||||||
int last_msg; /* indicator of last message player saw */
|
int last_msg; /* indicator of last message player saw */
|
||||||
|
|||||||
+12
-1
@@ -83,6 +83,16 @@ do_statusline1()
|
|||||||
return newbot1;
|
return newbot1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
check_gold_symbol()
|
||||||
|
{
|
||||||
|
int goldch, goldoc;
|
||||||
|
unsigned int goldos;
|
||||||
|
int goldglyph = objnum_to_glyph(GOLD_PIECE);
|
||||||
|
(void) mapglyph(goldglyph, &goldch, &goldoc, &goldos, 0, 0);
|
||||||
|
iflags.invis_goldsym = ((char)goldch <= ' ');
|
||||||
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
do_statusline2()
|
do_statusline2()
|
||||||
{
|
{
|
||||||
@@ -110,7 +120,8 @@ do_statusline2()
|
|||||||
if ((money = money_cnt(invent)) < 0L)
|
if ((money = money_cnt(invent)) < 0L)
|
||||||
money = 0L; /* ought to issue impossible() and then discard gold */
|
money = 0L; /* ought to issue impossible() and then discard gold */
|
||||||
Sprintf(eos(dloc), "%s:%-2ld", /* strongest hero can lift ~300000 gold */
|
Sprintf(eos(dloc), "%s:%-2ld", /* strongest hero can lift ~300000 gold */
|
||||||
iflags.in_dumplog ? "$" : encglyph(objnum_to_glyph(GOLD_PIECE)),
|
(iflags.in_dumplog || iflags.invis_goldsym) ? "$"
|
||||||
|
: encglyph(objnum_to_glyph(GOLD_PIECE)),
|
||||||
min(money, 999999L));
|
min(money, 999999L));
|
||||||
dln = strlen(dloc);
|
dln = strlen(dloc);
|
||||||
/* '$' encoded as \GXXXXNNNN is 9 chars longer than display will need */
|
/* '$' encoded as \GXXXXNNNN is 9 chars longer than display will need */
|
||||||
|
|||||||
@@ -1254,6 +1254,7 @@ boolean at_stairs, falling, portal;
|
|||||||
#ifdef USE_TILES
|
#ifdef USE_TILES
|
||||||
substitute_tiles(newlevel);
|
substitute_tiles(newlevel);
|
||||||
#endif
|
#endif
|
||||||
|
check_gold_symbol();
|
||||||
/* record this level transition as a potential seen branch unless using
|
/* record this level transition as a potential seen branch unless using
|
||||||
* some non-standard means of transportation (level teleport).
|
* some non-standard means of transportation (level teleport).
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -3651,6 +3651,7 @@ boolean tinitial, tfrom_file;
|
|||||||
/* Is it a symbol? */
|
/* Is it a symbol? */
|
||||||
if (strstr(opts, "S_") == opts && parsesymbols(opts)) {
|
if (strstr(opts, "S_") == opts && parsesymbols(opts)) {
|
||||||
switch_symbols(TRUE);
|
switch_symbols(TRUE);
|
||||||
|
check_gold_symbol();
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4152,6 +4153,7 @@ doset() /* changing options via menu by Per Liboriussen */
|
|||||||
|
|
||||||
destroy_nhwindow(tmpwin);
|
destroy_nhwindow(tmpwin);
|
||||||
if (need_redraw) {
|
if (need_redraw) {
|
||||||
|
check_gold_symbol();
|
||||||
reglyph_darkroom();
|
reglyph_darkroom();
|
||||||
(void) doredraw();
|
(void) doredraw();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user