fix C343-331 mirrors & sleeping mon

This outstanding bug was complicated slightly because the same
code was used for a sleeping mon as for a paralyzed mon so
message phrasing was called into question.

Just flip the phrasing to be about what you are able to discern
under those circumstances, which is very little, and don't have
the sleeping or paralyzed monster react to the mirror.
This commit is contained in:
nhmall
2018-09-21 23:34:00 -04:00
parent 6811b2554e
commit 8e4ce066c9
2 changed files with 16 additions and 3 deletions

View File

@@ -128,6 +128,8 @@ cancelled shapeshifter hit by polymorph magic will become uncancelled
polymorph zap which creates a new long worm (or retains an old one via wizard
mode monpolycontrol) can hit that worm multiple times (tail segments)
wishing for "orange" could yield orange or orange colored gem/potion/spellbook
a sleeping or paralyzed mon would be frightened by its reflection when
applying a mirror
Fixes to Post-3.6.1 Problems that Were Exposed Via git Repository

View File

@@ -956,9 +956,20 @@ struct obj *obj;
(void) rloc(mtmp, TRUE);
} else if (!is_unicorn(mtmp->data) && !humanoid(mtmp->data)
&& (!mtmp->minvis || perceives(mtmp->data)) && rn2(5)) {
if (vis)
pline("%s is frightened by its reflection.", Monnam(mtmp));
monflee(mtmp, d(2, 4), FALSE, FALSE);
boolean do_react = TRUE;
if (mtmp->mfrozen) {
if (vis)
You("discern no obvious reaction from %s.", mon_nam(mtmp));
else
You_feel("a bit silly gesturing the mirror in that direction.");
do_react = FALSE;
}
if (do_react) {
if (vis)
pline("%s is frightened by its reflection.", Monnam(mtmp));
monflee(mtmp, d(2, 4), FALSE, FALSE);
}
} else if (!Blind) {
if (mtmp->minvis && !See_invisible)
;