U917 - floating above unknown stairs
Attempting to go > while blind and floating over unknown stairs/ladder would refer to the stairs in the "high above" message (however, the stairs/ladder remained unidentified on the map). Change this case so it only refers to stairs/ladder if that's what the hero remembers on the map.
This commit is contained in:
@@ -64,6 +64,7 @@ keep score from wrapping around and becoming negative by capping it
|
||||
kicked objects do not slide when on the air or water levels
|
||||
when a giant carrying a boulder dies in a pit, ensure that the corpse is
|
||||
buried under the filled pit
|
||||
when blind and levitating > shouldn't say "stairs" if player has not seen them
|
||||
|
||||
|
||||
Platform- and/or Interface-Specific Fixes
|
||||
|
||||
12
src/do.c
12
src/do.c
@@ -770,6 +770,18 @@ dodown()
|
||||
if (float_down(I_SPECIAL|TIMEOUT, W_ARTI))
|
||||
return (1); /* came down, so moved */
|
||||
}
|
||||
if (Blind) {
|
||||
/* Avoid alerting player to an unknown stair or ladder.
|
||||
* Changes the message for a covered, known staircase
|
||||
* too; staircase knowledge is not stored anywhere.
|
||||
*/
|
||||
if (stairs_down)
|
||||
stairs_down =
|
||||
(glyph_to_cmap(levl[u.ux][u.uy].glyph) == S_dnstair);
|
||||
else if (ladder_down)
|
||||
ladder_down =
|
||||
(glyph_to_cmap(levl[u.ux][u.uy].glyph) == S_dnladder);
|
||||
}
|
||||
floating_above(stairs_down ? "stairs" : ladder_down ?
|
||||
"ladder" : surface(u.ux, u.uy));
|
||||
return (0); /* didn't move */
|
||||
|
||||
Reference in New Issue
Block a user