Have newcham() give messages when monsters polymorph in more cases
This is a descendent of an earlier patch I wrote. The main idea is still to clearly communicate to the player *what* something is turning into, without the need to farlook afterwards, and give them the opportunity to add MSGTYPE for when something jumps on a polymorph trap and becomes an arch-lich. If it happens out of sight, the player also might get a whiff of the monster's smell, giving a bit of advance warning. There is one new case in here, in normal_shape(), which came about because I noticed a weird message sequence: "The magic-absorbing blade cancels the python! You kill the chameleon!" with no intervening message indicating the python reverted to a chameleon.
This commit is contained in:
@@ -2143,7 +2143,7 @@ use_misc(struct monst* mtmp)
|
||||
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;
|
||||
@@ -2152,7 +2152,7 @@ use_misc(struct monst* mtmp)
|
||||
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;
|
||||
@@ -2179,7 +2179,7 @@ use_misc(struct monst* mtmp)
|
||||
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);
|
||||
|
||||
Reference in New Issue
Block a user