newcham() feedback: "A <mon> turns into it!"

Silly shapechange message if <mon> is sensed via telepathy and takes
on a mindless form.  In the case I noticed, it was a doppelganger on
the far side of a maze wall who changed from something ordinary into
a mummy while the hero was wearing an amulet of esp.

3.6.0 could deliver this message, but I think changes since then have
increased the chance for newcham() to give shapechange feedback.
This commit is contained in:
PatR
2016-04-21 16:45:19 -07:00
parent 573fff466e
commit 23b3d5a126
2 changed files with 14 additions and 5 deletions

View File

@@ -1,4 +1,4 @@
/* NetHack 3.6 mon.c $NHDT-Date: 1454528962 2016/02/03 19:49:22 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.210 $ */
/* NetHack 3.6 mon.c $NHDT-Date: 1461282107 2016/04/21 23:41:47 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.215 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/* NetHack may be freely redistributed. See license for details. */
@@ -2421,7 +2421,7 @@ struct monst *mtmp;
}
newsym(mtmp->mx, mtmp->my);
return FALSE; /* didn't petrify */
}
}
}
return TRUE;
}
@@ -3367,10 +3367,17 @@ boolean msg; /* "The oldmon turns into a newmon!" */
? "slime"
: x_monnam(mtmp, ARTICLE_A, (char *) 0,
SUPPRESS_SADDLE, FALSE));
if (!strcmpi(oldname, "it") && !strcmpi(newname, "it"))
/* oldname was capitalized above; newname will be lower case */
if (!strcmpi(newname, "it")) { /* can't see or sense it now */
if (!!strcmpi(oldname, "it")) /* could see or sense it before */
pline("%s disappears!", oldname);
(void) usmellmon(mdat);
else
pline("%s turns into %s!", oldname, newname);
} else { /* can see or sense it now */
if (!strcmpi(oldname, "it")) /* couldn't see or sense it before */
pline("%s appears!", upstart(newname));
else
pline("%s turns into %s!", oldname, newname);
}
if (save_mname)
MNAME(mtmp) = save_mname;
}