fix #H7453 - 'bonesknown' for dead hero
Dead hero's map coordinates are set to <0,0> part way through bones creation, then were being used to record grave location for overview feedback with "final resting place for <dead hero>" if/when another character got those bones and found the grave (actually, spotted the location where first hero died regardless of whether a grave gets placed there). Record dead hero's pre-<0,0> coordinates as intended. Not previously noticed because in wizard mode the final resting place becomes part of overview info as soon as bones are loaded rather than waiting for the death location to be reached.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.6 bones.c $NHDT-Date: 1508827591 2017/10/24 06:46:31 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.71 $ */
|
||||
/* NetHack 3.6 bones.c $NHDT-Date: 1539653203 2018/10/16 01:26:43 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.73 $ */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985,1993. */
|
||||
/*-Copyright (c) Robert Patrick Rankin, 2012. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
@@ -460,6 +460,7 @@ make_bones:
|
||||
resetobjs(level.buriedobjlist, FALSE);
|
||||
|
||||
/* Hero is no longer on the map. */
|
||||
u.ux0 = u.ux, u.uy0 = u.uy;
|
||||
u.ux = u.uy = 0;
|
||||
|
||||
/* Clear all memory from the level. */
|
||||
@@ -485,7 +486,7 @@ make_bones:
|
||||
formatkiller(newbones->how, sizeof newbones->how, how, TRUE);
|
||||
Strcpy(newbones->when, yyyymmddhhmmss(when));
|
||||
/* final resting place, used to decide when bones are discovered */
|
||||
newbones->frpx = u.ux, newbones->frpy = u.uy;
|
||||
newbones->frpx = u.ux0, newbones->frpy = u.uy0;
|
||||
newbones->bonesknown = FALSE;
|
||||
/* if current character died on a bones level, the cemetery list
|
||||
will have multiple entries, most recent (this dead hero) first */
|
||||
|
||||
Reference in New Issue
Block a user