Fix more dark_room and nocolor

Fixes for example the case of searching while blind, as
reported by Boudewijn.
This commit is contained in:
Pasi Kallinen
2015-07-10 16:03:57 +03:00
parent 864fb1e203
commit c1ef2e19df

View File

@@ -578,7 +578,7 @@ xchar x, y;
if (lev->typ != ROOM && lev->seenv) {
map_background(x, y, 1);
} else {
lev->glyph = (flags.dark_room && !Is_rogue_level(&u.uz))
lev->glyph = (flags.dark_room && iflags.use_color && !Is_rogue_level(&u.uz))
? cmap_to_glyph(S_darkroom)
: (lev->waslit ? cmap_to_glyph(S_room)
: cmap_to_glyph(S_stone));
@@ -587,7 +587,7 @@ xchar x, y;
} else if ((lev->glyph >= cmap_to_glyph(S_stone)
&& lev->glyph < cmap_to_glyph(S_darkroom))
|| glyph_is_invisible(levl[x][y].glyph)) {
lev->glyph = (flags.dark_room && !Is_rogue_level(&u.uz))
lev->glyph = (flags.dark_room && iflags.use_color && !Is_rogue_level(&u.uz))
? cmap_to_glyph(S_darkroom)
: (lev->waslit ? cmap_to_glyph(S_room)
: cmap_to_glyph(S_stone));
@@ -601,7 +601,7 @@ xchar x, y;
if (lev->typ == CORR && lev->glyph == cmap_to_glyph(S_litcorr)
&& !lev->waslit)
show_glyph(x, y, lev->glyph = cmap_to_glyph(S_corr));
else if (lev->typ == ROOM && flags.dark_room
else if (lev->typ == ROOM && flags.dark_room && iflags.use_color
&& lev->glyph == cmap_to_glyph(S_room))
show_glyph(x, y, lev->glyph = cmap_to_glyph(S_darkroom));
}
@@ -632,7 +632,7 @@ xchar x, y;
/* Floor spaces are dark if unlit. Corridors are dark if unlit. */
if (lev->typ == ROOM && lev->glyph == cmap_to_glyph(S_room)
&& (!lev->waslit || flags.dark_room))
&& (!lev->waslit || (flags.dark_room && iflags.use_color)))
show_glyph(x, y, lev->glyph = cmap_to_glyph(
flags.dark_room ? S_darkroom : S_stone));
else if (lev->typ == CORR && lev->glyph == cmap_to_glyph(S_litcorr)