unseen-monster vs pool of water
From a bug report sent directly to devteam 16-Jan-2015 (subject: "NH343 (NAO version) - display bug"), if the hero was blind and levitating and searched next to 'I' (text) or '?' (tiles) which was displayed on top of a known pool and the remembered unseen monster was no longer there, the 'I'/'?' was removed but the spot was redrawn as floor rather than water.
This commit is contained in:
@@ -224,6 +224,9 @@ sortloot changed to place diluted potion of foo after potion of foo instead
|
|||||||
of listing all diluted potions followed by all non-diluted ones
|
of listing all diluted potions followed by all non-diluted ones
|
||||||
digging down on a grave converted the terrain to floor but did not create a
|
digging down on a grave converted the terrain to floor but did not create a
|
||||||
pit and uncover the grave's contents; digging again--on floor--did
|
pit and uncover the grave's contents; digging again--on floor--did
|
||||||
|
when feel_location removed a remembered-unseen-monster glyph from a known
|
||||||
|
water location while hero was levitating, the map was redrawn showing
|
||||||
|
floor instead of water at that spot
|
||||||
|
|
||||||
post-3.6.0: fix "object lost" panic during pickup caused by sortloot revamp
|
post-3.6.0: fix "object lost" panic during pickup caused by sortloot revamp
|
||||||
post-3.6.0: more sortloot revisions
|
post-3.6.0: more sortloot revisions
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/* NetHack 3.6 display.c $NHDT-Date: 1457207034 2016/03/05 19:43:54 $ $NHDT-Branch: chasonr $:$NHDT-Revision: 1.82 $ */
|
/* NetHack 3.6 display.c $NHDT-Date: 1461979957 2016/04/30 01:32:37 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.83 $ */
|
||||||
/* Copyright (c) Dean Luick, with acknowledgements to Kevin Darcy */
|
/* Copyright (c) Dean Luick, with acknowledgements to Kevin Darcy */
|
||||||
/* and Dave Cohrs, 1990. */
|
/* and Dave Cohrs, 1990. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
@@ -572,6 +572,8 @@ xchar x, y;
|
|||||||
} else if (IS_DOOR(lev->typ)) {
|
} else if (IS_DOOR(lev->typ)) {
|
||||||
map_background(x, y, 1);
|
map_background(x, y, 1);
|
||||||
} else if (IS_ROOM(lev->typ) || IS_POOL(lev->typ)) {
|
} else if (IS_ROOM(lev->typ) || IS_POOL(lev->typ)) {
|
||||||
|
boolean do_room_glyph;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* An open room or water location. Normally we wouldn't touch
|
* An open room or water location. Normally we wouldn't touch
|
||||||
* this, but we have to get rid of remembered boulder symbols.
|
* this, but we have to get rid of remembered boulder symbols.
|
||||||
@@ -597,20 +599,18 @@ xchar x, y;
|
|||||||
* We could also just display what is currently on the top of the
|
* We could also just display what is currently on the top of the
|
||||||
* object stack (if anything).
|
* object stack (if anything).
|
||||||
*/
|
*/
|
||||||
if (lev->glyph == objnum_to_glyph(BOULDER)) {
|
do_room_glyph = FALSE;
|
||||||
if (lev->typ != ROOM && lev->seenv) {
|
if (lev->glyph == objnum_to_glyph(BOULDER)
|
||||||
|
|| glyph_is_invisible(lev->glyph)) {
|
||||||
|
if (lev->typ != ROOM && lev->seenv)
|
||||||
map_background(x, y, 1);
|
map_background(x, y, 1);
|
||||||
} else {
|
else
|
||||||
lev->glyph = (flags.dark_room && iflags.use_color
|
do_room_glyph = TRUE;
|
||||||
&& !Is_rogue_level(&u.uz))
|
} else if (lev->glyph >= cmap_to_glyph(S_stone)
|
||||||
? cmap_to_glyph(S_darkroom)
|
&& lev->glyph < cmap_to_glyph(S_darkroom)) {
|
||||||
: (lev->waslit ? cmap_to_glyph(S_room)
|
do_room_glyph = TRUE;
|
||||||
: cmap_to_glyph(S_stone));
|
}
|
||||||
show_glyph(x, y, lev->glyph);
|
if (do_room_glyph) {
|
||||||
}
|
|
||||||
} 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 && iflags.use_color
|
lev->glyph = (flags.dark_room && iflags.use_color
|
||||||
&& !Is_rogue_level(&u.uz))
|
&& !Is_rogue_level(&u.uz))
|
||||||
? cmap_to_glyph(S_darkroom)
|
? cmap_to_glyph(S_darkroom)
|
||||||
|
|||||||
Reference in New Issue
Block a user