allow "grey spellbook" as alternative spelling of "gray spellbook"
handle attacks by cancelled monsters more consistently
armor worn by monsters might negate some magic attacks like it does for hero
+give feedback and discovery when visible monster puts on cloak of invisibility
Platform- and/or Interface-Specific Fixes
{
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 */
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