testing for Vlad

Redo the check for whether a monster is Vlad when deciding whether to
keep it out of a bones file.  Use the new check in find_defensive()
where Vlad won't waste a turn attempting to use a wand of digging when
in his undiggable own tower.  (Failing to check for vampshifted Vlad
in the latter case wasn't actually a bug because if/when shifted,
he's unable to use items so couldn't attempt to use wand of digging.
Switch to the new check anyway.)
This commit is contained in:
PatR
2023-06-09 16:09:26 -07:00
parent e475dca209
commit 9079250cfc
3 changed files with 17 additions and 15 deletions

View File

@@ -381,7 +381,7 @@ can_make_bones(void)
return TRUE;
}
/* monster removed before saving a bones file,
/* monster might need to be removed before saving a bones file,
in case these characters are not in their home bases */
static void
remove_mon_from_bones(struct monst *mtmp)
@@ -390,8 +390,7 @@ remove_mon_from_bones(struct monst *mtmp)
if (mtmp->iswiz || mptr == &mons[PM_MEDUSA]
|| mptr->msound == MS_NEMESIS || mptr->msound == MS_LEADER
|| mptr == &mons[PM_VLAD_THE_IMPALER]
|| mtmp->cham == PM_VLAD_THE_IMPALER /* in case he's vampshifted */
|| is_Vlad(mtmp) /* mptr == &mons[VLAD_THE_IMPALER] || cham == VLAD */
|| (mptr == &mons[PM_ORACLE] && !fixuporacle(mtmp)))
mongone(mtmp);
}