concealed monster sanity checks

Add some more checks to sanity_check_single_mon().  If mon->data
is discovered to be bad, panic instead of just issuing a warning
since a subsequent crash would be inevitable.  Make sure hidden
ceiling hiders have a ceiling to hide at (so not on the planes of
air or water; some quest levels should probably be classified as
"no ceiling" but currently aren't).  Perform a few mimic checks.

Protection from shape changers had a couple of minor bugs.  A mimic
hidden at a spot the hero couldn't see would be allowed to remain
hidden (and stay that way once within view because protection from
shape changers isn't re-checked during ordinary activity).  Also,
if a pet was shape-changed while eating a mimic corpse at the time
protection from shape changers started, it would fall into untimed
sleep as part of being forced back to normal shape [rescham()] if
its location could be seen.
This commit is contained in:
PatR
2020-12-18 15:05:54 -08:00
parent f60ecfc3e7
commit c709c45780
2 changed files with 71 additions and 17 deletions

View File

@@ -1,4 +1,4 @@
NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.394 $ $NHDT-Date: 1608236443 2020/12/17 20:20:43 $
NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.395 $ $NHDT-Date: 1608332750 2020/12/18 23:05:50 $
General Fixes and Modified Features
-----------------------------------
@@ -337,6 +337,10 @@ when water damage wet a towel, the new wetness might randomly become less
when the wetness of a towel in inventory changed, persistent inventory wasn't
updated to show that
make Death revive earlier, and all the Riders after 67 turns at latest
when protection from shape changers begins, force mimic out of concealment
even if hero can't see its location; for locations that can be seen,
don't make double-trouble Wizard concealed as another monster--or pet
temporarily mimicking something while eating mimic corpse--fall asleep
Fixes to 3.7.0-x Problems that Were Exposed Via git Repository