observing monster become invisible

Requested by one of the beta testers 13 months ago... when a visible
monster becomes invisible and vanishes, mark its map location with
the remembered, unseen monster glyph.  (When the player zaps a
monster with a wand of make invisible, that only happens if the wand
type is known.  I'm not sure that's right but didn't alter it....)

The request suggested also doing it for a monster who disappears by
teleporting away, but I haven't attempted to implement that.
This commit is contained in:
PatR
2016-07-09 15:03:03 -07:00
parent eb22f7f583
commit 617ab5968f
6 changed files with 23 additions and 12 deletions

View File

@@ -1379,10 +1379,15 @@ boolean your_fault;
if (!resist(mon, POTION_CLASS, 0, NOTELL))
mon->mconf = TRUE;
break;
case POT_INVISIBILITY:
case POT_INVISIBILITY: {
boolean sawit = canspotmon(mon);
angermon = FALSE;
mon_set_minvis(mon);
if (sawit && !canspotmon(mon) && cansee(mon->mx, mon->my))
map_invisible(mon->mx, mon->my);
break;
}
case POT_SLEEPING:
/* wakeup() doesn't rouse victims of temporary sleep */
if (sleep_monst(mon, rnd(12), POTION_CLASS)) {