more statue animation and corpse revival (trunk only)

Reviving a corpse or statue restores the monster to life before
deciding whether the object which was used up in the process belongs to a
shop.  This resulted in a rather strange situation when the revived monster
was the shopkeeper involved.  The object can't have been stolen; there was
no shk to own it at the time it got used up.

  Manlobbi's statue of a shopkeeper comes to life.
  You owe Manlobbi N zorkmids for it.

Suppress "of a shopkeeper" in such a case, and do not charge the hero for
using up the statue.  The corpse case only needed the second part.

     This revises post-3.4.3 code so doesn't warrant a fixes entry.
This commit is contained in:
nethack.rankin
2005-04-21 05:51:41 +00:00
parent 35a35de6dd
commit 046714c1b6
2 changed files with 15 additions and 4 deletions

View File

@@ -1,4 +1,4 @@
/* SCCS Id: @(#)zap.c 3.5 2005/03/28 */
/* SCCS Id: @(#)zap.c 3.5 2005/04/20 */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/* NetHack may be freely redistributed. See license for details. */
@@ -673,7 +673,8 @@ boolean by_hero;
stolen_value() will refer to the object as "it" */
pline("A corpse is resuscitated.");
if (shkp)
/* don't charge for shopkeeper's own corpse if we just revived him */
if (shkp && mtmp != shkp)
(void) stolen_value(corpse, x, y, (boolean)shkp->mpeaceful, FALSE);
/* [we don't give any comparable message about the corpse for