more cursed potion of invisibility
Give feedback if a visible monster drinks a potion of invisibility that happens to be cursed so monster fails to become invisible, or if hero hits a visible monster with a cursed potion of invisibility and it fails to become invisible.
This commit is contained in:
@@ -2439,6 +2439,13 @@ use_misc(struct monst *mtmp)
|
|||||||
}
|
}
|
||||||
if (oseen)
|
if (oseen)
|
||||||
makeknown(otmp->otyp);
|
makeknown(otmp->otyp);
|
||||||
|
} else if (vismon && !mtmp->minvis) {
|
||||||
|
/* cursed potion; mon tried to make itself invisible but failed */
|
||||||
|
pline("%s briefly seems to be transparent.", Monnam(mtmp));
|
||||||
|
/* we could call map_invisible() before the pline(), then
|
||||||
|
newsym() after; unseen monster glyph would be visible during
|
||||||
|
the pline, but hero would forget any remembered object under
|
||||||
|
the monster */
|
||||||
} else if (!vismon && canseemon(mtmp)) {
|
} else if (!vismon && canseemon(mtmp)) {
|
||||||
/* cursed potion; this won't happen because a monster will only
|
/* cursed potion; this won't happen because a monster will only
|
||||||
drink a potion of invisibility when not already invisible */
|
drink a potion of invisibility when not already invisible */
|
||||||
|
|||||||
@@ -1785,6 +1785,9 @@ potionhit(struct monst *mon, struct obj *obj, int how)
|
|||||||
if (sawit && !canspotmon(mon)) {
|
if (sawit && !canspotmon(mon)) {
|
||||||
if (cansee(mon->mx, mon->my))
|
if (cansee(mon->mx, mon->my))
|
||||||
map_invisible(mon->mx, mon->my);
|
map_invisible(mon->mx, mon->my);
|
||||||
|
} else if (sawit && cursed_potion) {
|
||||||
|
pline("%s briefly seems to be transparent.", Monnam(mon));
|
||||||
|
/* see use_misc(muse.c) for comment about map_invisible() */
|
||||||
} else if (!sawit && canspotmon(mon)) {
|
} else if (!sawit && canspotmon(mon)) {
|
||||||
/* if an invisible mon glyph was present, mon_set_minvis()'s
|
/* if an invisible mon glyph was present, mon_set_minvis()'s
|
||||||
newsym() has gotten rid of it */
|
newsym() has gotten rid of it */
|
||||||
|
|||||||
Reference in New Issue
Block a user