aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* New puzzle! Setting what might be a record for how long we've sat onSimon Tatham2010-02-15
| | | | | | | 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]
* Patch inspired by one from James H: remove spurious references toSimon Tatham2010-01-19
| | | | | | | | $mw (it should only ever have been used in the Cygwin makefile), and move the libraries to the end of the link line in the Unix makefile for better portability. [originally from svn r8853]
* Fix from James H: the shared code between drawing and printingSimon Tatham2010-01-18
| | | | | | | should use state->adjacent rather than ds->adjacent, because the latter won't be initialised in printing mode. [originally from svn r8852]
* Fix from James H: in printing mode, the shared code between drawingSimon Tatham2010-01-18
| | | | | | | and printing must avoid referring to stuff in the game_drawstate, since the game_drawstate isn't a real one. [originally from svn r8851]
* Memory leak fix from James H.Simon Tatham2010-01-18
| | | | [originally from svn r8850]
* Patch from James H to fix a bug in which ambiguous puzzles wouldSimon Tatham2010-01-17
| | | | | | occasionally be generated, e.g. by 8x8de#417341658689473 . [originally from svn r8845]
* Typo/formatting fixes for Magnets documentation.Jacob Nevins2010-01-16
| | | | [originally from svn r8844]
* Highlight the sides as well as the top of a tower when it'sSimon Tatham2010-01-16
| | | | | | | | | selected. I think this is a more or less aesthetically neutral change for the actual selection, but the selection code is reused to draw the victory flash and that's greatly improved by not having the tower sides remain unflashed. [originally from svn r8843]
* Don't use payload strings directly as the format for printf.Simon Tatham2010-01-13
| | | | [originally from svn r8839]
* Placate optimiser.Simon Tatham2010-01-13
| | | | [originally from svn r8838]
* New puzzle from James H: 'Magnets'.Simon Tatham2010-01-13
| | | | [originally from svn r8836]
* Couple of small changes to Singles from James H which missed my mainSimon Tatham2010-01-12
| | | | | | | commit: tweak the grid generation a bit, and fix the use of the Solve function on a grid containing errors. [originally from svn r8835]
* Patch from James H: make the Windows debugging output conditional onSimon Tatham2010-01-12
| | | | | | an enabling environment variable. [originally from svn r8834]
* Add a couple more checks to the 3d collision detection, withoutSimon Tatham2010-01-12
| | | | | | | which a click miles above the invisible RH surface of a tower would sometimes select that tower. [originally from svn r8833]
* Corrections to Singles documentation, plus index terms.Jacob Nevins2010-01-11
| | | | [originally from svn r8832]
* Misspelled keyword.Simon Tatham2010-01-11
| | | | [originally from svn r8830]
* New puzzle from James Harvey: 'Singles', an implementation ofSimon Tatham2010-01-11
| | | | | | | | Hitori. One infrastructure change in the process: latin.c has acquired a utility function to generate a latin rectangle rather than a full square. [originally from svn r8828]
* Retire the YTRANS and YUNTRANS macros in latin.[ch]. They wereSimon Tatham2010-01-11
| | | | | | | | | introduced to mimic similar macros in solo.c, in case Solo ever moved over to being based on the latin.c solver framework; but even Solo has long since lost those macros, so latin.c has no need to keep them. [originally from svn r8827]
* The 3-D graphics in Towers need a corresponding change on the inputSimon Tatham2010-01-11
| | | | | | | | | | side: instead of locating a mouse click in whichever base grid square contained the click location, we should check to see if a tower protrudes on to that location from a neighbouring square. That way, a click should reliably activate the tower that was actually drawn under the mouse pointer. [originally from svn r8826]
* Oops! Remove evidence of blatant clone-and-hack from Keen. :-)Simon Tatham2010-01-11
| | | | [originally from svn r8825]
* Oops. Uncomment the difficulty exceptions! (Also add anotherSimon Tatham2010-01-09
| | | | | | constraint in validate_params.) [originally from svn r8824]
* New year, new puzzle.Jacob Nevins2010-01-08
| | | | [originally from svn r8823]
* Fix formatting.Jacob Nevins2010-01-07
| | | | [originally from svn r8822]
* Crop the Towers icon more sensibly (i.e. at all).Simon Tatham2010-01-07
| | | | [originally from svn r8821]
* Upgrade the graphics in Towers to include a thematically appropriateSimon Tatham2010-01-07
| | | | | | | | | 3D effect. (I only committed it without so that I could preserve a record of how the code looked before I added it.) The 3D effect can be disabled by setting TOWERS_2D in the environment, should anybody seriously dislike it. [originally from svn r8817]
* New puzzle, again using the revised latin.c: 'Towers', a clone of aSimon Tatham2010-01-07
| | | | | | | latin-square puzzle which I've seen described by several names but the most common is 'Skyscrapers'. [originally from svn r8816]
* Memory leak fix from James H.Simon Tatham2010-01-07
| | | | [originally from svn r8815]
* Proof that check_errors() is sufficient.Simon Tatham2010-01-05
| | | | [originally from svn r8813]
* Refer to group elements by letters instead of numbers, in keepingSimon Tatham2010-01-05
| | | | | | | with usual abstract group notation. In puzzles with a clear identity, it's called e. [originally from svn r8812]
* Add a facility in the latin.c solver diagnostics to allow a puzzleSimon Tatham2010-01-05
| | | | | | to call the digit values by custom names. [originally from svn r8811]
* Add an even more evil (!) game mode, in which it's not madeSimon Tatham2010-01-05
| | | | | | | | immediately obvious which element of the group is the identity - at least two elements including the identity have their rows and columns completely blanked. [originally from svn r8810]
* Yikes! Fix a misaimed 'sizeof' which I only got away with becauseSimon Tatham2010-01-05
| | | | | | ints and pointers are usually the same size. [originally from svn r8809]
* A user asked for the < signs in Unequal to be bolder.Simon Tatham2010-01-05
| | | | [originally from svn r8808]
* Missing piece of code I should have cribbed from Solo: we have toSimon Tatham2010-01-05
| | | | | | | lay out large numbers of pencil marks differently in a square containing a clue. [originally from svn r8807]
* Another 16-bit-cleanliness fix (and for once I spotted it before James!)Simon Tatham2010-01-05
| | | | [originally from svn r8806]
* Memory leak fix from Tiago Dionizio: whenever we free the midend'sSimon Tatham2010-01-04
| | | | | | | collection of game states, we should also free the move strings from which they were constructed. [originally from svn r8805]
* 16-bit cleanliness patch from James H.Simon Tatham2010-01-04
| | | | [originally from svn r8803]
* For my own use in local Windows builds of the 'unfinished' puzzles,Simon Tatham2010-01-01
| | | | | | | add an include directory to the Windows makefile so that source files in subdirectories can find the main headers. [originally from svn r8802]
* Couple of missing 'static's.Simon Tatham2010-01-01
| | | | [originally from svn r8801]
* New puzzle in 'unfinished'. Essentially, Sudoku for group theorists:Simon Tatham2009-12-30
| | | | | | | | | | | | | | | | | | you are given a partially specified Cayley table of a small finite group, and must fill in all the missing entries using both Sudoku- style deductions (minus the square block constraint) and the group axioms. I've just thrown it together in about five hours by cloning- and-hacking from Keen, as much as anything else to demonstrate that the new latin.c interface really does make it extremely easy to write new Latin square puzzles. It's not really _unfinished_, as such, but it is just too esoteric (not to mention difficult) for me to feel entirely comfortable with adding it to the main puzzle collection. I can't bring myself to throw it away, though, and who knows - perhaps a university maths department might find it a useful teaching tool :-) [originally from svn r8800]
* Fix bug causing array overrun. Only seemed to be showing a symptomSimon Tatham2009-12-27
| | | | | | | on Windows, presumably because the data after the array was harmless elsewhere. [originally from svn r8798]
* New puzzle! 'Keen', a clone of KenKen.Simon Tatham2009-12-27
| | | | [originally from svn r8796]
* Normalise Unequal (and latin.c) so that solver diagnostics startSimon Tatham2009-12-27
| | | | | | | | their coordinate from 1 rather than 0, for consistency with Solo. (My geek instincts would rather work from 0, but I've generally found that puzzle users sending me email tend to prefer 1.) [originally from svn r8795]
* I've never trusted common variables. Take those bare ints out ofSimon Tatham2009-12-27
| | | | | | | latin.h and put them in latin.c with 'extern' declarations in the header. [originally from svn r8794]
* Introduce, and implement as usefully as I can in all front ends, aSimon Tatham2009-12-27
| | | | | | | | | | new function in the drawing API which permits the display of text from outside basic ASCII. A fallback mechanism is provided so that puzzles can give a list of strings they'd like to display in order of preference and the system will return the best one it can manage; puzzles are required to cope with ASCII-only front ends. [originally from svn r8793]
* Tweak the semantics of dsf_merge() so that the canonical element ofSimon Tatham2009-12-27
| | | | | | | | | any equivalence class is always the element with the smallest index. This is slower (the previous behaviour, suggested by Jonas Koelker, was to choose the new root element to maximise performance), but still more than acceptably fast and more useful. [originally from svn r8792]
* Refactor latin.c to make it easier to reuse. Instead of clientSimon Tatham2009-12-27
| | | | | | | | | | | programs having to clone the latin_solver() function and insert their own extra deduction routines, they can now just _call_ latin_solver with enough parameters to let it fit its own deductions into their difficulty framework and call a set of provided function pointers to do user deductions. Modified Unequal to work in the new world, of course. [originally from svn r8791]
* New mode for Unequal, from James H. In this mode, called 'Adjacent',Simon Tatham2009-12-27
| | | | | | | | | | the < and > clues are replaced by bars separating every pair of squares whose contents differ by exactly 1. Unlike standard Unequal, which presents only a subset of the available clues, in Adjacent the clues are _all_ present, so you can deduce from the absence of a bar that the two numbers it would separate are _not_ consecutive. [originally from svn r8790]
* latin_generate_quick is long gone, so remove it from the header file.Simon Tatham2009-12-23
| | | | [originally from svn r8789]
* Keyboard control for Dominosa (patch largely due to James H, thoughSimon Tatham2009-12-22
| | | | | | with considerable meddling from me). [originally from svn r8788]