-NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.469 $ $NHDT-Date: 1615304752 2021/03/09 15:45:52 $
+NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.474 $ $NHDT-Date: 1615759956 2021/03/14 22:12:36 $
General Fixes and Modified Features
-----------------------------------
recognized backslash escape sequences but not M-x meta characters,
vice versa for BINDINGS (most noticeable for menu interaction keys
such as menu_next_page because those can be set via either directive)
+when creating a rolling boulder trap, don't place boulder on a path that
+ starts on or passes over a pit/spiked pit, hole/trap door,
+ teleport trap/level teleporter/magic portal
Fixes to 3.7.0-x Problems that Were Exposed Via git Repository
-/* NetHack 3.7 trap.h $NHDT-Date: 1596498566 2020/08/03 23:49:26 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.19 $ */
+/* NetHack 3.7 trap.h $NHDT-Date: 1615759956 2021/03/14 22:12:36 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.20 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Pasi Kallinen, 2016. */
/* NetHack may be freely redistributed. See license for details. */
#define is_pit(ttyp) ((ttyp) == PIT || (ttyp) == SPIKED_PIT)
#define is_hole(ttyp) ((ttyp) == HOLE || (ttyp) == TRAPDOOR)
+/* "transportation" traps */
+#define is_xport(ttyp) ((ttyp) >= TELEP_TRAP && (ttyp) <= MAGIC_PORTAL)
#endif /* TRAP_H */
-/* NetHack 3.7 trap.c $NHDT-Date: 1612053752 2021/01/31 00:42:32 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.402 $ */
+/* NetHack 3.7 trap.c $NHDT-Date: 1615759958 2021/03/14 22:12:38 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.403 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Robert Patrick Rankin, 2013. */
/* NetHack may be freely redistributed. See license for details. */
schar dx,
schar dy)
{
+ struct trap *t;
uchar typ;
xchar x, y;
typ = levl[x][y].typ;
if (!isok(x, y) || !ZAP_POS(typ) || closed_door(x, y))
return FALSE;
+ if ((t = t_at(x, y)) != 0
+ && (is_pit(t->ttyp) || is_hole(t->ttyp) || is_xport(t->ttyp)))
+ return FALSE;
}
cc->x = x;
cc->y = y;