Files
nethack/include
Michael Meyer a69ff06e85 Make mstate flag checks more mutually consistent
Various places checking for whether a monster was on the map based on
mstate flags were inconsistent about which ones they checked (and then
place_monster() was additionally inconsistent with all of them about
which bits were cleared when placing a monster onto the map).  I think
some places were also more convoluted than is now necessary because they
date back to mstate being an alias for mspare1, which it shared with
migflags before those became two separate dedicated fields (MSTATE_MASK
also dates back to this and is no longer used, so I removed it).

I tried to go through all the MON_foo mstate bits, understand when/why
they are set, and make the various functions I noticed more consistent
(with each other, and with my understanding of how the bits work) about
how they are treated.  I don't know for a fact that I understood
everything right -- some diagnostic bits that aren't used for much of
anything, like MON_OBLITERATE, had me mystified until I read the 5ee78c5
commit message -- but this patch hasn't caused any new problems (sanity
check or otherwise) with the fuzzer in my testing so far.  All the same,
it could probably use review by someone who has a good sense of what the
mstate bits mean.
2023-11-08 10:41:40 -08:00
..
2022-02-04 11:01:20 -05:00
2022-03-13 13:58:56 -07:00
2022-11-29 21:53:21 -05:00
2022-07-19 21:23:26 +03:00
2022-07-19 21:23:26 +03:00
2022-11-29 21:53:21 -05:00
2023-09-16 20:16:51 -04:00
2023-04-22 16:10:37 -07:00
2023-05-22 20:50:35 -04:00
2023-03-04 11:02:06 +02:00
2022-06-30 23:48:18 -04:00
2023-10-25 13:26:03 -07:00
2023-03-01 14:00:29 +02:00
2021-01-26 21:06:16 -05:00
2023-05-04 06:02:23 -07:00
2023-11-07 15:38:10 -08:00
2023-05-22 14:43:01 -07:00
2023-10-29 21:02:47 -04:00
2022-07-01 08:36:03 -04:00
2022-03-11 07:33:28 -05:00
2022-06-19 02:30:45 -07:00
2022-11-29 21:53:21 -05:00
2022-11-29 21:53:21 -05:00
2023-02-25 07:02:19 -08:00
2023-10-04 20:06:12 +03:00
2023-06-14 15:54:04 -07:00
2023-06-14 15:54:04 -07:00
2023-04-22 11:13:53 -04:00
2022-10-26 14:21:23 -04:00
2022-10-26 14:21:23 -04:00
2022-10-26 14:21:23 -04:00
2022-10-26 14:21:23 -04:00
2023-10-16 09:11:05 -04:00
2022-07-23 23:11:13 -07:00
2023-08-28 16:17:41 -04:00
2023-02-25 18:05:09 +02:00
2022-11-29 21:53:21 -05:00
2022-12-10 12:27:18 -05:00
2020-08-12 16:15:28 -07:00
2022-10-26 14:21:23 -04:00
2022-11-29 21:53:21 -05:00
2023-08-25 14:02:57 -04:00
2022-06-30 23:48:18 -04:00
2023-10-12 18:45:14 -07:00
2022-10-26 14:21:23 -04:00
2022-10-26 14:21:23 -04:00
2023-07-30 14:08:30 -07:00
2023-05-08 15:21:03 -07:00