-$NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.59 $ $NHDT-Date: 1578659784 2020/01/10 12:36:24 $
+$NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.60 $ $NHDT-Date: 1578690701 2020/01/10 21:11:41 $
General Fixes and Modified Features
-----------------------------------
falling into a chasm but they remained intact because trap creation
had been changed to not clobber such things (so couldn't make pits)
make earthquake which hits a secret door or a secret corridor reveal it
-wizard mode wishing for "Amulet of Yendor" has 50:50 chance for true Amulet
+wizard mode wishing for "Amulet of Yendor" had 50:50 chance for true Amulet
or a cheap plastic imitation; recognize "real Amulet of Yendor" and
- "fake Amulet of Yendor" to precisely specify either of them
+ "fake Amulet of Yendor" to precisely specify either of them but also
+ take away the 50% chance of yielding a fake one when neither real nor
+ fake is specified
unpaid globs showed weight info unconditionally outside of wizmode
walking out of tethered-to-buried-object trap condition was supposed to
reinstate punishment but wasn't finding the buried iron ball because
would be blasted when touching it
wielded aklys had its "(tethered weapon...)" description scrambled
randomized trap name could pick trap #0 which isn't a trap and yielded "water"
+if running and Blind or Stunned or Fumbling or Dex < 10, encountering a closed
+ door orthogonally would keep reporting "ouch! you bump into a door"
+ repeatedly until eventually interrupted by approaching monster or
+ hunger or ^C
Platform- and/or Interface-Specific Fixes
-/* NetHack 3.6 hack.c $NHDT-Date: 1578448654 2020/01/08 01:57:34 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.239 $ */
+/* NetHack 3.6 hack.c $NHDT-Date: 1578690701 2020/01/10 21:11:41 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.240 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Derek S. Ray, 2015. */
/* NetHack may be freely redistributed. See license for details. */
/* Eat the rock. */
if (mode == DO_MOVE && still_chewing(x, y))
return FALSE;
- } else if (flags.autodig && !g.context.run && !g.context.nopick && uwep
- && is_pick(uwep)) {
+ } else if (flags.autodig && !g.context.run && !g.context.nopick
+ && uwep && is_pick(uwep)) {
/* MRKR: Automatic digging when wielding the appropriate tool */
if (mode == DO_MOVE)
(void) use_pick_axe2(uwep);
set, 'move' would get reset by caller */
g.context.door_opened
= g.context.move = TRUE;
+ /* since we've just lied about successfully
+ moving, we need to manually stop running */
+ nomul(0);
} else
pline("That door is closed.");
}
pline_The("corridor widens here.");
goto stop;
}
- if ((g.context.run == 1 || g.context.run == 3 || g.context.run == 8) && !noturn
- && !m0 && i0 && (corrct == 1 || (corrct == 2 && i0 == 1))) {
+ if ((g.context.run == 1 || g.context.run == 3 || g.context.run == 8)
+ && !noturn && !m0 && i0 && (corrct == 1 || (corrct == 2 && i0 == 1))) {
/* make sure that we do not turn too far */
if (i0 == 2) {
if (u.dx == y0 - u.uy && u.dy == u.ux - x0)