]> granicus.if.org Git - nethack/commit
crushed to death by a gas spore's explosion
authorPatR <rankin@nethack.org>
Mon, 21 Aug 2017 22:50:36 +0000 (15:50 -0700)
committerPatR <rankin@nethack.org>
Mon, 21 Aug 2017 22:50:36 +0000 (15:50 -0700)
commit0ad33783f0c9005d1baf05fee3172e488a4bc803
tree9318780a3a1595455caf663dc412e76ee38a7461
parenteadecb1bafb58bc15454e611178b9a65dbf46e07
crushed to death by a gas spore's explosion

From the newsgroup, remarking on an usual cause of death seen at NAO.
Surviving a gas spore's explosion (via hit points, not from life-saving)
left "gas spore's explosion" as stale killer.name.  Being killed by
opening a drawbridge (but not by closing or breaking one) only assigned
killer.name if it didn't already have a value, so the stale reason got
used:  crushed to death by a gas spore's explosion.

This fixes it two ways:  clear the stale value after surviving the
explosion, and assign a specific reason when opening the drawbridge.

This also removes stale reason for death set up by various drawbridge
activity.  For the usual case, the hero only survives by life-saving
which does its own clearing of killer.name.  But there might have been
cases where it was being set for the hero when operating on a monster,
so no life-saving involved.  The drawbridge code is not the easiest
code to navigate....
doc/fixes36.1
src/dbridge.c
src/explode.c
src/mon.c