simon-svn: puzzles: simon

tartarus-commits at lists.tartarus.org tartarus-commits at lists.tartarus.org
Tue May 17 12:46:55 BST 2005


SVN root:       svn://ixion.tartarus.org/main
Changes by:     simon
Revision:       5791
Date:           2005-05-17 12:46:55 +0100 (Tue, 17 May 2005)

Log message (16 lines):
`Restart' is now an undo-able action: it appends a move to the end
of the undo list rather than destroying it. Partly this is because
accidental restarts are a real pain, and partly because it allows
you to compare the initial to the current state by restart-then-undo
which is handy in some puzzles.

In order to do this, I've introduced an additional per-entry field
in the undo list in the midend, which tracks which states were
created by `unusual' operations (Solve and Restart). The midend
takes care of suppressing animation and completion flashes during
transitions between a `special' state and its predecessor, relieving
the game backends of having to do it individually.

(This probably means I could remove some complexity in the
flash_time() functions in most backends, but I haven't done that in
this checkin.)

Modified files:
U   puzzles/midend.c

Links:
http://www.tartarus.org/~simon-anonsvn/viewcvs.cgi?rev=5791&view=rev
http://www.tartarus.org/~simon-anonsvn/viewcvs.cgi/puzzles/midend.c?rev=5791&r1=5790&r2=5791



More information about the tartarus-commits mailing list