if (mcham >= LOW_PM) {
unsigned mcan = mon->mcan;
- (void) newcham(mon, &mons[mcham], FALSE, FALSE);
+ (void) newcham(mon, &mons[mcham], FALSE, TRUE);
mon->cham = NON_PM;
/* newcham() may uncancel a polymorphing monster; override that */
if (mcan)
return 2;
case MUSE_WAN_POLYMORPH:
mzapwand(mtmp, otmp, TRUE);
- (void) newcham(mtmp, muse_newcham_mon(mtmp), TRUE, FALSE);
+ (void) newcham(mtmp, muse_newcham_mon(mtmp), TRUE, TRUE);
if (oseen)
makeknown(WAN_POLYMORPH);
return 2;
m_useup(mtmp, otmp);
if (vismon)
pline("%s suddenly mutates!", Monnam(mtmp));
- (void) newcham(mtmp, muse_newcham_mon(mtmp), FALSE, FALSE);
+ (void) newcham(mtmp, muse_newcham_mon(mtmp), FALSE, TRUE);
if (oseen)
makeknown(POT_POLYMORPH);
return 2;
worm_move(mtmp);
newsym(g.trapx, g.trapy);
- (void) newcham(mtmp, (struct permonst *) 0, FALSE, FALSE);
+ (void) newcham(mtmp, (struct permonst *) 0, FALSE, TRUE);
return 2;
case MUSE_BAG:
return mloot_container(mtmp, otmp, vismon);
if (resists_magm(mtmp)) {
shieldeff(mtmp->mx, mtmp->my);
} else if (!resist(mtmp, WAND_CLASS, 0, NOTELL)) {
- (void) newcham(mtmp, (struct permonst *) 0, FALSE, in_sight);
+ (void) newcham(mtmp, (struct permonst *) 0, FALSE, TRUE);
if (in_sight)
seetrap(trap);
}
if (!resists_magm(steed) && !resist(steed, WAND_CLASS, 0, NOTELL)) {
struct permonst *mdat = steed->data;
- (void) newcham(steed, (struct permonst *) 0, FALSE, FALSE);
+ (void) newcham(steed, (struct permonst *) 0, FALSE, TRUE);
if (!can_saddle(steed) || !can_ride(steed)) {
dismount_steed(DISMOUNT_POLY);
} else {