tty: panning while clipped

Noticed while testing statuslines on a small terminal window.  Using
the cursor to pick locations that panned the map to view a new subset
would end up showing a new view of the regular map rather than a
different section of what was currently displayed.  For farlook that
caused monsters to take on new hallucinatory forms which was fairly
inconsequential, but for #terrain and various forms of detection it
reverted to the ordinary map instead of showing the map features that
the player requested or the temporarily revealed monsters and such.

Most interfaces keep track of the whole map and just show their view
of the new subset when panning, similar to redisplay after being
covered up and then re-exposed, but tty isn't doing that.  I made
same change to Amiga as to tty since the code it was using was very
similar.  I haven't touched any of the other interfaces and assume
that they don't need this.  I've verified that curses and X11 don't.
This commit is contained in:
PatR
2019-03-29 14:35:36 -07:00
parent 25a456bb2a
commit 14d8ed199e
5 changed files with 58 additions and 26 deletions

View File

@@ -1,4 +1,4 @@
$NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.288 $ $NHDT-Date: 1553885439 2019/03/29 18:50:39 $
$NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.289 $ $NHDT-Date: 1553895318 2019/03/29 21:35:18 $
This fixes36.2 file is here to capture information about updates in the 3.6.x
lineage following the release of 3.6.1 in April 2018. Please note, however,
@@ -488,6 +488,11 @@ tty: when status condition names were abbreviated due to lack of room, they
tty: when encumbrance state was abbreviated due to lack of room, there was no
separation from preceding status field and the value would not update
when the state changed (except for removal on change to unencumbered)
tty: when clipping was used to show a subset of the map on a small display,
panning into a new subset while using the cursor to pick a location
would ask the core to generate a new view of the map rather than use
whatever was currently shown, bringing back suppressed monsters/
objects/traps for #terrain and new hallucinatory monsters for farlook
X11: its use of genl_status_update exposed a negative index use that could
lead to a segfault
X11: rollback disabling of keystroke input for PICK_NONE menus (for scrolling)