follow-up
adjust the mon_offmap(mon) macro to test any of the bits that constitute being off the map, while ignoring some of the other bits that do not.
This commit is contained in:
+4
-1
@@ -257,7 +257,10 @@ struct monst {
|
|||||||
|
|
||||||
#define mon_perma_blind(mon) (!mon->mcansee && !mon->mblinded)
|
#define mon_perma_blind(mon) (!mon->mcansee && !mon->mblinded)
|
||||||
|
|
||||||
#define mon_offmap(mon) ((mon)->mstate != MON_FLOOR)
|
#define MON_OFF_MAP_BITS (MON_OFFMAP | MON_DETACH | MON_LIMBO | MON_MIGRATING \
|
||||||
|
| MON_ENDGAME_FREE | MON_ENDGAME_MIGR | MON_BUBBLEMOVE)
|
||||||
|
|
||||||
|
#define mon_offmap(mon) (((mon)->mstate & (MON_OFF_MAP_BITS)) != 0)
|
||||||
|
|
||||||
/* Get the maximum difficulty monsters that can currently be generated,
|
/* Get the maximum difficulty monsters that can currently be generated,
|
||||||
given the current level difficulty and the hero's level. */
|
given the current level difficulty and the hero's level. */
|
||||||
|
|||||||
+2
-3
@@ -935,11 +935,10 @@ place_monster(struct monst *mon, coordxy x, coordxy y)
|
|||||||
bits that may be set. We'll probably make MON_FLOOR an
|
bits that may be set. We'll probably make MON_FLOOR an
|
||||||
actual bit one day */
|
actual bit one day */
|
||||||
|
|
||||||
mon->mstate &= ~(MON_OFFMAP | MON_DETACH | MON_LIMBO | MON_MIGRATING
|
mon->mstate &= ~(MON_OFF_MAP_BITS);
|
||||||
| MON_ENDGAME_FREE | MON_ENDGAME_MIGR);
|
|
||||||
|
|
||||||
/* We don't mess with these bits above:
|
/* We don't mess with these bits above:
|
||||||
MON_BUBBLEMOVE | MON_OBLITERATE | MON_STILL_ARRIVING | MON_PARKED
|
MON_OBLITERATE | MON_STILL_ARRIVING | MON_PARKED
|
||||||
*/
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user