]> granicus.if.org Git - nethack/commitdiff
growing into genocided form
authornethack.rankin <nethack.rankin>
Tue, 14 Jun 2005 04:42:16 +0000 (04:42 +0000)
committernethack.rankin <nethack.rankin>
Tue, 14 Jun 2005 04:42:16 +0000 (04:42 +0000)
     <Someone> recently reported that after lieutenants had been genocided,
he saw a sergeant drink a potion of gain level and then vanish, leaving
behind its gear but no corpse.  The message about growing into a lieutenant
and subsequently dropping dead would only be given if the monster could
be sensed via telepathy, not when it occurred in plain sight.  I'm not
absolutely sure that this was unintentional, since sensing the dying
monster's mind might be giving additional information about what was
happening.  But there was no comment stating that and I think such behavior
violates the principal of least surprise, so seeing it happen will now give
the message too.

doc/fixes34.4
src/makemon.c

index a72ea7e07714624c6e61d773b93e7e7b5fa20f04..00a14057f1cc2e6ed55588c86ad189d8eecefcae 100644 (file)
@@ -124,6 +124,8 @@ clear prompt from screen after ESC is used to abort "In what direction?"
 minor interface changes for interactively manipulating autopickup exceptions
 chatting with quest leader who was brought back from the dead gave warnings
 becoming green slime or mimicking gold violates "never changed form" conduct
+when a monster grew into a higher form which had previously been genocided,
+       the message explaining its fate was only given if it was sensed via ESP
 
 
 Platform- and/or Interface-Specific Fixes
index fc23c9ca322cf7edaa8828a2a71e8373342d4f75..01471a241a85a579b9a82e5b8d773f47f9533a6b 100644 (file)
@@ -1,4 +1,4 @@
-/*     SCCS Id: @(#)makemon.c  3.5     2004/06/12      */
+/*     SCCS Id: @(#)makemon.c  3.5     2005/06/13      */
 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
 /* NetHack may be freely redistributed.  See license for details. */
 
@@ -1453,7 +1453,7 @@ struct monst *mtmp, *victim;
        if ((int)++mtmp->m_lev >= mons[newtype].mlevel && newtype != oldtype) {
            ptr = &mons[newtype];
            if (mvitals[newtype].mvflags & G_GENOD) {   /* allow G_EXTINCT */
-               if (sensemon(mtmp))
+               if (canspotmon(mtmp))
                    pline("As %s grows up into %s, %s %s!", mon_nam(mtmp),
                        an(ptr->mname), mhe(mtmp),
                        nonliving(ptr) ? "expires" : "dies");