mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-20 07:31:30 -07:00
New puzzle! Setting what might be a record for how long we've sat on
a puzzle before it was ready to commit, here is 'Signpost': a clone of janko.at's "Arrow Path", by James Harvey. [originally from svn r8861]
This commit is contained in:
@ -2,8 +2,8 @@
|
||||
|
||||
PUZZLES = blackbox bridges cube dominosa fifteen filling flip galaxies guess \
|
||||
inertia keen lightup loopy magnets map mines net netslide pattern \
|
||||
pegs rect samegame singles sixteen slant solo tents towers twiddle \
|
||||
unequal untangle
|
||||
pegs rect samegame signpost singles sixteen slant solo tents towers \
|
||||
twiddle unequal untangle
|
||||
|
||||
BASE = $(patsubst %,%-base.png,$(PUZZLES))
|
||||
WEB = $(patsubst %,%-web.png,$(PUZZLES))
|
||||
@ -71,6 +71,7 @@ netslide-ibase.png : override CROP=289x289 144x144+0+0
|
||||
pattern-ibase.png : override CROP=384x384 223x223+0+0
|
||||
pegs-ibase.png : override CROP=263x263 147x147+116+0
|
||||
rect-ibase.png : override CROP=205x205 115x115+90+0
|
||||
signpost-ibase.png : override CROP=240x240 98x98+23+23
|
||||
singles-ibase.png : override CROP=224x224 98x98+15+15
|
||||
sixteen-ibase.png : override CROP=288x288 144x144+144+144
|
||||
slant-ibase.png : override CROP=321x321 160x160+160+160
|
||||
|
23
icons/signpost.sav
Normal file
23
icons/signpost.sav
Normal file
@ -0,0 +1,23 @@
|
||||
SAVEFILE:41:Simon Tatham's Portable Puzzle Collection
|
||||
VERSION :1:1
|
||||
GAME :8:Signpost
|
||||
PARAMS :4:4x4c
|
||||
CPARAMS :4:4x4c
|
||||
SEED :15:230468784719861
|
||||
DESC :19:1eceebecfbfhgcaa16a
|
||||
NSTATES :2:15
|
||||
STATEPOS:2:11
|
||||
MOVE :8:L2,1-3,1
|
||||
MOVE :8:L0,1-1,0
|
||||
MOVE :8:L2,2-1,1
|
||||
MOVE :8:L1,2-0,3
|
||||
MOVE :8:L0,2-2,0
|
||||
MOVE :8:L1,3-1,2
|
||||
MOVE :8:L1,1-1,3
|
||||
MOVE :8:L1,0-3,0
|
||||
MOVE :8:L0,0-0,1
|
||||
MOVE :8:L3,0-3,2
|
||||
MOVE :8:L3,2-0,2
|
||||
MOVE :8:L3,1-2,2
|
||||
MOVE :8:L2,3-2,1
|
||||
MOVE :8:L2,0-2,3
|
80
puzzles.but
80
puzzles.but
@ -2774,6 +2774,86 @@ row/column counts.
|
||||
time, making the puzzle more difficult.
|
||||
|
||||
|
||||
\C{signpost} \i{Signpost}
|
||||
|
||||
\cfg{winhelp-topic}{games.signpost}
|
||||
|
||||
You have a grid of squares; each square (except the last one)
|
||||
contains an arrow, and some squares also contain numbers. Your job
|
||||
is to connect the squares to form a continuous list of numbers
|
||||
starting at 1 and linked in the direction of the arrows \dash so the
|
||||
arrow inside the square with the number 1 will point to the square
|
||||
containing the number 2, which will point to the square containing
|
||||
the number 3, etc. Each square can be any distance away from the
|
||||
previous one, as long as it is somewhere in the direction of the
|
||||
arrow.
|
||||
|
||||
By convention the first and last numbers are shown; one or more
|
||||
interim numbers may also appear at the beginning.
|
||||
|
||||
Credit for this puzzle goes to \i{Janko} \k{janko-arrowpath}, who call it
|
||||
\q{Pfeilpfad} (\q{arrow path}).
|
||||
|
||||
Signpost was contributed to this collection by James Harvey.
|
||||
|
||||
\B{janko-arrowpath}
|
||||
\W{http://janko.at/Raetsel/Pfeilpfad/index.htm}\cw{http://janko.at/Raetsel/Pfeilpfad/index.htm}
|
||||
|
||||
\H{signpost-controls} \I{controls, for Signpost}Signpost controls
|
||||
|
||||
To play Signpost, you connect squares together by dragging from one
|
||||
square to another, indicating that they are adjacent in the
|
||||
sequence. Drag with the left button from a square to its successor,
|
||||
or with the right button from a square to its predecessor.
|
||||
|
||||
If you connect together two squares in this way and one of them has
|
||||
a number in it, the appropriate number will appear in the other
|
||||
square. If you connect two non-numbered squares, they will be
|
||||
assigned temporary algebraic labels: on the first occasion, they
|
||||
will be labelled \cq{a} and \cq{a+1}, and then \cq{b} and \cq{b+1},
|
||||
and so on. Connecting more squares on to the ends of such a chain
|
||||
will cause them all to be labelled with the same letter.
|
||||
|
||||
When you left-click or right-click in a square, the legal squares to
|
||||
connect it to will be shown.
|
||||
|
||||
The arrow in each square starts off black, and goes grey once you
|
||||
connect the square to its successor. Also, each square which needs a
|
||||
predecessor has a small dot in the bottom left corner, which
|
||||
vanishes once you link a square to it. So your aim is always to
|
||||
connect a square with a black arrow to a square with a dot.
|
||||
|
||||
To remove any links for a particular square (both incoming and
|
||||
outgoing), left-drag it off the grid. To remove a whole chain,
|
||||
right-drag any square in the chain off the grid.
|
||||
|
||||
You can also use the cursor keys to move around the grid squares and
|
||||
lines. Pressing the return key when over a square starts a link
|
||||
operation, and pressing the return key again over a square will
|
||||
finish the link, if allowable. Pressing the space bar over a square
|
||||
will show the other squares pointing to it, and allow you to form a
|
||||
backward link, and pressing the space bar again cancels this.
|
||||
|
||||
(All the actions described in \k{common-actions} are also available.)
|
||||
|
||||
\H{signpost-parameters} \I{parameters, for Signpost}Signpost parameters
|
||||
|
||||
These parameters are available from the \q{Custom...} option on the
|
||||
\q{Type} menu.
|
||||
|
||||
\dt \e{Width}, \e{Height}
|
||||
|
||||
\dd Size of grid in squares. There will be half \e{Width} \by \e{Height}
|
||||
dominoes in the grid: if this number is odd then one square will be blank.
|
||||
|
||||
(Grids with at least one odd dimension tend to be easier to solve.)
|
||||
|
||||
\dt \e{Force start/end to corners}
|
||||
|
||||
\dd If true, the start and end squares are always placed in opposite corners
|
||||
(the start at the top left, and the end at the bottom right). If false the start
|
||||
and end squares are placed randomly (although always both shown).
|
||||
|
||||
|
||||
\A{licence} \I{MIT licence}\ii{Licence}
|
||||
|
||||
|
23
signpost.R
Normal file
23
signpost.R
Normal file
@ -0,0 +1,23 @@
|
||||
# -*- makefile -*-
|
||||
|
||||
SIGNPOST_EXTRA = dsf
|
||||
|
||||
signpost : [X] GTK COMMON signpost SIGNPOST_EXTRA signpost-icon|no-icon
|
||||
signpost : [G] WINDOWS COMMON signpost SIGNPOST_EXTRA signpost.res|noicon.res
|
||||
|
||||
signpostsolver : [U] signpost[STANDALONE_SOLVER] SIGNPOST_EXTRA STANDALONE m.lib
|
||||
signpostsolver : [C] signpost[STANDALONE_SOLVER] SIGNPOST_EXTRA STANDALONE
|
||||
|
||||
ALL += signpost[COMBINED] SIGNPOST_EXTRA
|
||||
|
||||
!begin gtk
|
||||
GAMES += signpost
|
||||
!end
|
||||
|
||||
!begin >list.c
|
||||
A(signpost) \
|
||||
!end
|
||||
|
||||
!begin >wingames.lst
|
||||
signpost.exe:Signpost
|
||||
!end
|
2333
signpost.c
Normal file
2333
signpost.c
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user