git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10455 c06c8d41-db1a-0410-9941-cceddc491573
XP2DL4CJ7FH2IPNNA6KHNOAFW6J2RSC44JWEGLYQHWUMU5EVHFUQC
V25XPIUUPVMKRK663D33PWE3GFQR47XZAV642T2NYGRFWZR5LT6AC
NR6IOAN3YLLSYDH4KR5MSY6RFAYITB7RSNCJOSZHBLGD5NKJX2HQC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
USHFWGQSGWH2Q3DL7KQK6A55GU2ZKIIFRHMUBK4KDV7MD2LT6GXQC
4PXWBSDP6GB3WDBHQQ2E7ZUOBJB7EJN37WBOPDK72KVVUOQ42Y2AC
JZNN5MYGLJ2N5VOKJU54ROMBUZPQXGGLAKR7GFH3VCCEI65TFAFAC
25CH7HH4LKXFIZ75YNMXS3TSXO6O27DYSOPLOD45K4OCNFWLS4LQC
SIDH2P7NBIG5KEOE27XHD3ZT2NQ2OJZFN6VZXWNWYFFY5YVXSSVQC
MV5USMLTBKVRWBAD67UFJ2BS4Y5HEOMYASRSB44DS24BBMRP75RQC
QEFW63ZHJEAR4GS5UBXDSLCET7QBV2SORJHWSO63ROO33QJMHGKAC
Y7RTDNSXNZG2YQ6VPTWOBLMTKIWABSNXCR7XRWU3QWTWRTTOXYCQC
set_envmap_obj(p, is_terrain_known(p)? grd(p) : DNGN_UNSEEN);
env.tile_bk_fg(p) = 0;
env.tile_bk_bg(p) = is_terrain_known(p) ?
tile_idx_unseen_terrain(p.x, p.y, grd(p)) :
tileidx_feature(DNGN_UNSEEN, p.x, p.y);
if (is_terrain_mapped(p))
{
unsigned int feature = grd(p);
unsigned int grid_symbol;
unsigned short grid_colour;
get_item_symbol(feature, &grid_symbol, &grid_colour);
unsigned int fg;
unsigned int bg;
tileidx_unseen(fg, bg, grid_symbol, p);
env.tile_bk_bg(p) = bg;
env.tile_bk_fg(p) = fg;
}
else
{
env.tile_bk_bg(p) = is_terrain_seen(p) ?
tile_idx_unseen_terrain(p.x, p.y, grd(p)) :
tileidx_feature(DNGN_UNSEEN, p.x, p.y);
env.tile_bk_fg(p) = 0;
}
env.tile_bk_bg(*ri) = tile_idx_unseen_terrain(ri->x, ri->y,
grd(*ri));
if (is_terrain_seen(*ri))
{
env.tile_bk_bg(*ri) = tile_idx_unseen_terrain(ri->x, ri->y,
grd(*ri));
}
else
{
unsigned int feature = grd(*ri);
unsigned int grid_symbol;
unsigned short grid_color;
get_item_symbol(feature, &grid_symbol, &grid_color);
unsigned int fg;
unsigned int bg;
tileidx_unseen(fg, bg, grid_symbol, *ri);
env.tile_bk_bg(*ri) = bg;
}
creatures_found++;
_mark_detected_creature(*ri, mon, fuzz_chance, fuzz_radius);
// If you can see the monster, don't "detect" it elsewhere.
if (!mons_near(mon) || !player_monster_visible(mon))
{
creatures_found++;
_mark_detected_creature(*ri, mon, fuzz_chance, fuzz_radius);
}