From de2c772a11a28af9ba29d3d150dc4fff74c5bcac Mon Sep 17 00:00:00 2001 From: "nethack.rankin" Date: Sun, 27 Apr 2003 10:32:55 +0000 Subject: [PATCH] Castle trap doors fix Recently discussed in the newsgroup, and it sounded familiar so may have been reported directly earlier: You fly through the trap door. You fly down along the stairs. when polymorphed into a flying creature or riding a flying steed. It only happens at the castle, and only happens because the go-down code is explicitly setting the arrival point to be the Valley stairs. That's how the castle trap doors used to work as traps too, but they were changed to dump you randomly near the stairs quite some time ago. Fix it by making intentional triggering work the same now; this also prevents the false feedback (even if you happen to arrive on the stairs by coincidence). --- doc/fixes34.2 | 1 + src/do.c | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/doc/fixes34.2 b/doc/fixes34.2 index 7965b0c98..5bd3f0764 100644 --- a/doc/fixes34.2 +++ b/doc/fixes34.2 @@ -45,6 +45,7 @@ allow wishing for magenta potions (ignoring the rank name 'mage') fix an uninitialized memory access in non-quick dolookup fix were changing message that wasn't being displayed immediate encumbrance feedback when removing gauntlets of power +make deliberately flying down the Castle's trap doors consistent with falling Platform- and/or Interface-Specific Fixes diff --git a/src/do.c b/src/do.c index 717efed21..86b90a34b 100644 --- a/src/do.c +++ b/src/do.c @@ -1,4 +1,4 @@ -/* SCCS Id: @(#)do.c 3.4 2002/09/08 */ +/* SCCS Id: @(#)do.c 3.4 2003/04/25 */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -801,7 +801,7 @@ dodown() trap->ttyp == HOLE ? "down the hole" : "through the trap door"); if (trap && Is_stronghold(&u.uz)) { - goto_hell(TRUE, TRUE); + goto_hell(FALSE, TRUE); } else { at_ladder = (boolean) (levl[u.ux][u.uy].typ == LADDER); next_level(!trap); -- 2.40.0