B14004 Cloaks of invisibility

There's no feedback message nor item discovery when you see a monster
	disappear as it puts on a cloak of invisibility.
This commit is contained in:
nethack.allison
2003-01-05 03:57:21 +00:00
parent 06812e0ce7
commit cebd0ccbab
2 changed files with 13 additions and 0 deletions

View File

@@ -404,9 +404,14 @@ boolean racialexception;
{
struct obj *old, *best, *obj;
int m_delay = 0;
int unseen = !canseemon(mon);
char nambuf[BUFSZ];
if (mon->mfrozen) return; /* probably putting previous item on */
/* Get a copy of monster's name before altering its visibility */
Strcpy(nambuf, See_invisible ? Monnam(mon) : mon_nam(mon));
old = which_armor(mon, flag);
if (old && old->cursed) return;
if (old && flag == W_AMUL) return; /* no such thing as better amulets */
@@ -495,6 +500,13 @@ outer_break:
mon->misc_worn_check |= flag;
best->owornmask |= flag;
update_mon_intrinsics(mon, best, TRUE, creation);
/* if couldn't see it but now can, or vice versa, */
if (!creation && (unseen ^ !canseemon(mon))) {
if (mon->minvis && !See_invisible) {
pline("Suddenly you cannot see %s.", nambuf);
makeknown(best->otyp);
} /* else if (!mon->minvis) pline("%s suddenly appears!", Amonnam(mon)); */
}
}
#undef RACE_EXCEPTION