yet more S_unexplored

Revert part of one of the earlier S_unexplored changes (erasing
the map window on tty) and deal with the issue differently.
This commit is contained in:
PatR
2020-04-19 16:15:16 -07:00
parent 579939010d
commit 5fa12f4bc4
2 changed files with 12 additions and 10 deletions
+8 -2
View File
@@ -1606,7 +1606,6 @@ int x, y, glyph;
} \ } \
} }
static const gbuf_entry nul_gbuf = { 1, GLYPH_UNEXPLORED };
/* /*
* Turn the 3rd screen into UNEXPLORED that needs to be refreshed. * Turn the 3rd screen into UNEXPLORED that needs to be refreshed.
*/ */
@@ -1614,7 +1613,14 @@ void
clear_glyph_buffer() clear_glyph_buffer()
{ {
register int x, y; register int x, y;
register gbuf_entry *gptr; register gbuf_entry *gptr, nul_gbuf;
int ch = ' ', color = NO_COLOR;
unsigned special = 0;
(void) mapglyph(GLYPH_UNEXPLORED, &ch, &color, &special, 0, 0, 0);
nul_gbuf.gnew = (ch != ' ' || color != NO_COLOR
|| (special & ~MG_UNEXPL) != 0) ? 1 : 0;
nul_gbuf.glyph = GLYPH_UNEXPLORED;
for (y = 0; y < ROWNO; y++) { for (y = 0; y < ROWNO; y++) {
gptr = &g.gbuf[y][0]; gptr = &g.gbuf[y][0];
+4 -8
View File
@@ -1652,16 +1652,12 @@ winid window;
g.context.botlx = 1; g.context.botlx = 1;
break; break;
case NHW_MAP: case NHW_MAP:
/* the full map isn't erased often so the benefit of clearing the /* cheap -- clear the whole thing and tell nethack to redraw botl */
whole screen and then redrawing status would be minimal here */ g.context.botlx = 1;
docorner(1, ROWNO - 1); /* sets map cells to S_unexplored /*FALLTHRU*/
* which might not be <space> */
break;
case NHW_BASE: case NHW_BASE:
clear_screen(); clear_screen();
if (!g.program_state.gameover) /* [this should reset state for MESSAGE, MAP, and STATUS] */
g.context.botlx = 1;
/* [this sould also reset state for MESSAGE, MAP, and STATUS] */
break; break;
case NHW_MENU: case NHW_MENU:
case NHW_TEXT: case NHW_TEXT: