simon-svn: puzzles: simon
Commits to Tartarus CVS repository.
tartarus-commits at lists.tartarus.org
Tue Oct 7 22:22:53 BST 2014
SVN root: svn://svn.tartarus.org/sgt
Changes by: simon
Revision: 10282
Date: 2014-10-07 22:22:53 +0100 (Tue, 07 Oct 2014)
Log message (15 lines):
Fix antialiasing artifacts around edges of Bridges islands.
When an island changes colour (because it becomes locked or
highlighted, or goes back to plain COL_FOREGROUND from one of those
states), we were just redrawing a filled circle over the previous one,
which only really worked before antialiasing was introduced.
Fixed by reworking the entire drawing edifice to be grid-square based,
so that every grid square is either redrawn in full or left alone.
Grid squares come in two types - island and bridge - but a bridge
square can have neighbouring islands overlap into it, and the bridges
entering an island overlap the island square too, so we end up with
quite a large collection of bitfields describing each square's
contents, and some care must be taken to draw each square in the right
order.
Modified files:
U puzzles/bridges.c
Links:
http://svn.tartarus.org/sgt/?rev=10282&view=rev
http://svn.tartarus.org/sgt/puzzles/bridges.c?rev=10282&r1=10281&r2=10282
More information about the tartarus-commits
mailing list