From: cohrs Date: Fri, 30 Aug 2002 06:17:41 +0000 (+0000) Subject: U29 - mounting steed gets thru tight spots X-Git-Tag: MOVE2GIT~2453 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=36905aaf962fb65aa7e0b46395c3ff5acf622606;p=nethack U29 - mounting steed gets thru tight spots Mounting a steed would work even when done diagonally at a doorway, such as a shop door. Use test_move to check for all such moves and disallow the mount in this case. --- diff --git a/doc/fixes34.1 b/doc/fixes34.1 index b2e552ae4..ddd810fa4 100644 --- a/doc/fixes34.1 +++ b/doc/fixes34.1 @@ -227,6 +227,8 @@ fix impossible when hitting/jousting a monster causes it to be killed twice fix a GOLDOBJ crash/hang in take_gold() that could be triggered by reading a cursed spellbook, or by sitting on a throne kicking a tree could produce 0 to 4 killer bees but it should have been 1 to 5 +mounting a steed allowed hero to make moves that would otherwise be disallowed + including mounting diagonally in a shop doorway Platform- and/or Interface-Specific Fixes diff --git a/src/steed.c b/src/steed.c index 791b61f97..38e891272 100644 --- a/src/steed.c +++ b/src/steed.c @@ -230,8 +230,9 @@ mount_steed(mtmp, force) } /* Can the player reach and see the monster? */ - if (u.uswallow || u.ustuck || u.utrap || Punished) { - if (Punished) + if (u.uswallow || u.ustuck || u.utrap || Punished || + !test_move(u.ux, u.uy, mtmp->mx-u.ux, mtmp->my-u.uy, TEST_MOVE)) { + if (Punished || !(u.uswallow || u.ustuck || u.utrap)) You("are unable to swing your %s over.", body_part(LEG)); else You("are stuck here for now.");