final attributes say riding when you die while dismounting

Reported to the mailing list on 5/23.  To fix this, u.usteed cannot simply
be unset earlier, so I put a check for this special case into enlightenment().
This commit is contained in:
cohrs
2002-06-30 07:11:26 +00:00
parent 532cd83d1f
commit fbd986d031
2 changed files with 5 additions and 1 deletions

View File

@@ -916,7 +916,10 @@ int final; /* 0 => still in progress; 1 => over, survived; 2 => dead */
else if (Amphibious) you_can("breathe water");
if (Passes_walls) you_can("walk through walls");
#ifdef STEED
if (u.usteed) {
/* If you die while dismounting, u.usteed is still set. Since several
* places in the done() sequence depend on u.usteed, just detect this
* special case. */
if (u.usteed && (final < 2 || strcmp(killer, "riding accident"))) {
Sprintf(buf, "riding %s", y_monnam(u.usteed));
you_are(buf);
}