-NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.390 $ $NHDT-Date: 1607895902 2020/12/13 21:45:02 $
+NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.391 $ $NHDT-Date: 1607901923 2020/12/13 23:25:23 $
General Fixes and Modified Features
-----------------------------------
fix genetic engineers dropping Schroedinger's cat box
the checks and handling for fountains, sinks, and drawbridges were being
missed during liquid_flow
+monster movement flags unification allowed displacer beasts to displace Riders
curses: 'msg_window' option wasn't functional for curses unless the binary
also included tty support
-/* NetHack 3.7 mon.c $NHDT-Date: 1607374002 2020/12/07 20:46:42 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.359 $ */
+/* NetHack 3.7 mon.c $NHDT-Date: 1607901923 2020/12/13 23:25:23 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.360 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Derek S. Ray, 2015. */
/* NetHack may be freely redistributed. See license for details. */
allowflags |= UNLOCKDOOR;
if (passes_bars(mtmp->data))
allowflags |= ALLOW_BARS;
+#if 0 /* can't do this here; leave it for mfndpos() */
if (is_displacer(mtmp->data))
allowflags |= ALLOW_MDISP;
+#endif
if (is_minion(mtmp->data) || is_rider(mtmp->data))
allowflags |= ALLOW_SANCT;
/* unicorn may not be able to avoid hero on a noteleport level */
|| (m_at(x, ny) && m_at(nx, y) && worm_cross(x, y, nx, ny)
&& !m_at(nx, ny) && (nx != u.ux || ny != u.uy))))
continue;
- if ((is_pool(nx, ny) == wantpool || poolok)
+ if ((poolok || is_pool(nx, ny) == wantpool)
&& (lavaok || !is_lava(nx, ny))) {
int dispx, dispy;
boolean monseeu = (mon->mcansee
info[cnt] |= ALLOW_TM;
}
} else {
+ flag &= ~ALLOW_MDISP; /* depends upon defender */
mmflag = flag | mm_displacement(mon, mtmp2);
if (!(mmflag & ALLOW_MDISP))
continue;