The main grid outline in Pattern was asymmetric between the top/left
Fix two window-resizing bugs introduced by the addition of the status bar.
Improve fatal error handling.
Added a dock menu which makes it more convenient to launch a new
Implemented the configurable dialog box mechanism, allowing custom
Added a framework for putting things other than the binary into a
Ah, no, _that_ fixes the malloc problem. I'd forgotten that midend.c
I _think_ this has just fixed an uninitialised-memory bug, but I'm
Dynamically frob the menu bar to achieve selection of game presets.
Initial checkin of a Mac OS X port of puzzles, using Cocoa. All
Arrange that we really _can_ compile all the puzzles into a single
Rather than each game backend file exporting a whole load of
Add a `jumble' key (`J') to Net, which scrambles the positions of all unlocked
Add grotty casts to prevent negative -> large positive conversion of cursor
Tweak Pattern doc for consistency with other puzzles.
Bah; r4954 introduced an array overrun.
Game completion detection was occasionally failing to spot a
Move MODULE files out of individual project directories into a
Remove .cvsignore files on all active branches.
Move the deactivate_timer() call from window_destroy() into
Deactivate the timer when we destroy the puzzle window. Otherwise it
Now we have the `dir' parameter, we should use it where it makes
Remove extraneous underscores at start and end of Rectangles seeds.
Net's redraw function now uses the `dir' argument to determine whether it's
After discussion with Simon, the game redraw functions are now passed a new
UI nit: make cursor visible upon use of A/S/D keyboard controls.
This repository needs to have a copy of mkfiles.pl, although really
Clarify that difficulty does not increase forever as you increase
Robustness in the face of a completely configurable expansion factor.
Moved my puzzle collection out into ixion's main CVS area, so here's
Just for convenience, a docs Makefile, outside the main mkfiles.pl
Fold in the expanded-grid mechanism for generating different kinds
Added a help file, mostly thanks to Jacob.
Failed to connect up the `destroy' signal in error_box(), causing
HACKING should be in .cvsignore.
Richard B's utterly evil `netslide': cross between Net and Sixteen.
Added the beginnings of a hacking guide.
makedist.sh should be silent.
Now that we have string-encodable game parameters, let's support a
Introduce routines in each game module to encode a set of game
Fix `visible' calculation (again).
Ahem. Seed validation was completely broken.
During redraws, I now do corner analysis centrally, which enables me
Remove vestigial code from the previous attempt at clever grid
Fiddle with the coordinate system to see if I can improve user
Flash on completion. Two people actually complained! :-)
Rename the Windows Net executable, due to its clash with the system
Now we have the UI abstraction, use it to implement keyboard control
And I _always_ forget to clear the background when first drawing the
Cosmetic fixes for Windows.
Don't rush move animation to a conclusion on a subsequent keypress
We should turn off the dragging variables in the UI _whenever_
Rectangles is now actually playable, since I've used the new UI
Oops - missed a bit in the GTK front end :-)
Framework alteration: we now support a `game_ui' structure in
Added a new game, `Rectangles', taken from nikoli.co.jp.
Forgot to initialise the font variables in the Windows frontend structure.
Forgot to set up the initial value of checkboxes.
dupstr() should take a const char *. In particular, this allows
Net puzzles more than 32 tiles wide weren't working properly due to
Peter Maydell points out that the README misspells `Makefile' as
Uninitialised variable caused ultra-wide windows. Silly.
Shell script to prepare a source distribution archive.
Redraws during undo in Sixteen had been broken by my faffing about
GTK and Windows appear to handle timers very differently:
Make Return and Escape work reliably in GTK dialog boxes.
The Windows RNG turns out to only give about 16 bits at a time. This
Implement selection of game seeds, by reusing the config box
`Fifteen' was getting the parity wrong on any size of board where
Game configuration box for Windows, by constructing the dialog box
`BOOLEAN' is a term already used by Win32. Bah. Change terminology.
Configuration dialog box, on the GTK front end only as yet.
Remove arbitrary restriction on Net minimum game size. (Awww, cute
Wrap the status bar in a viewport, to avoid it expanding if the text
The cube was being drawn slightly differently on the top and left
Keep the status bar in better sync with the game display.
We were forgetting to count the final move.
Incorrect placing of the polyhedron sometimes left it on a blue
Implemented text and clipping primitives in the frontend, and added
`There's always one'. Add nullgame to .cvsignore.
Add a template file defining the null game.
Add a new game concept called a `flash'. This is a graphical effect
Have each game declare a name which is used for window titles etc.
Shift-click is equivalent to middle-click. This is mostly for
Fix zillions of MSVC compiler warnings. Sigh.
Introduce diagonal movement keys on the numeric keypad, and use them
Add .map and .rsp files to .cvsignore.
More robust timer handling in GTK: never create a new timer when one
Add a menu bar, in both Windows and GTK. In particular, game modules
A-_ha_! The Windows Rectangle() call appears to get uppity if asked
Most of a Windows front end. Something's not _quite_ right in the