aboutsummaryrefslogtreecommitdiff
path: root/pattern.c
diff options
context:
space:
mode:
authorFranklin Wei <franklin@rockbox.org>2024-07-21 05:32:09 -0400
committerSimon Tatham <anakin@pobox.com>2024-07-31 23:29:00 +0100
commitc010ca122f8e5a9b9828a846cbbc0d32de489b20 (patch)
treec71f71d72d83b48c1a01716f6a37725fb0698adf /pattern.c
parentb50a95807ab1248c68b213cc9c2b43ea0bbce0f5 (diff)
downloadpuzzles-c010ca122f8e5a9b9828a846cbbc0d32de489b20.zip
puzzles-c010ca122f8e5a9b9828a846cbbc0d32de489b20.tar.gz
puzzles-c010ca122f8e5a9b9828a846cbbc0d32de489b20.tar.bz2
puzzles-c010ca122f8e5a9b9828a846cbbc0d32de489b20.tar.xz
Untangle: add cursor control interface.
The cursor keys navigate amongst the points. CURSOR_SELECT toggles dragging; CURSOR_SELECT2 and the Tab key cycle through the points. The cursor navigation scheme jumps to the nearest point within the quadrant of the cursor direction; this seems to yield fairly intuitive gameplay. Unfortunately, the "quadrant-nearest-neighbors" digraph produced by this scheme is not necessarily fully reciprocal; that is, pressing opposite cursor keys in sequence does not always return to the original point. There doesn't seem to be any immediately obvious way around this. As for connectivity (i.e. whether all points are reachable from any given point), I could not find a counterexample, but I don't yet have a formal proof that this is the case in general. Hence, I've added the ability to cycle through all the points with Tab. (This will probably also be useful in conjunction with the "Numbers" point drawing preference.)
Diffstat (limited to 'pattern.c')
0 files changed, 0 insertions, 0 deletions