~mdw
/
sgt
/
puzzles
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Patch from Ton van Overbeek to correct Loopy's misplaced line ends
[sgt/puzzles]
/
lightup.c
diff --git
a/lightup.c
b/lightup.c
index
7af44e3
..
b2c9b28
100644
(file)
--- a/
lightup.c
+++ b/
lightup.c
@@
-1824,11
+1824,13
@@
static char *interpret_move(game_state *state, game_ui *ui, game_drawstate *ds,
int x, int y, int button)
{
enum { NONE, FLIP_LIGHT, FLIP_IMPOSSIBLE } action = NONE;
int x, int y, int button)
{
enum { NONE, FLIP_LIGHT, FLIP_IMPOSSIBLE } action = NONE;
- int cx = -1, cy = -1
, cv = ui->cur_visible
;
+ int cx = -1, cy = -1;
unsigned int flags;
unsigned int flags;
- char buf[80], *nullret, *empty = "", c;
+ char buf[80], *nullret
= NULL
, *empty = "", c;
if (button == LEFT_BUTTON || button == RIGHT_BUTTON) {
if (button == LEFT_BUTTON || button == RIGHT_BUTTON) {
+ if (ui->cur_visible)
+ nullret = empty;
ui->cur_visible = 0;
cx = FROMCOORD(x);
cy = FROMCOORD(y);
ui->cur_visible = 0;
cx = FROMCOORD(x);
cy = FROMCOORD(y);
@@
-1855,13
+1857,9
@@
static char *interpret_move(game_state *state, game_ui *ui, game_drawstate *ds,
ui->cur_x = min(max(ui->cur_x, 0), state->w - 1);
ui->cur_y = min(max(ui->cur_y, 0), state->h - 1);
ui->cur_visible = 1;
ui->cur_x = min(max(ui->cur_x, 0), state->w - 1);
ui->cur_y = min(max(ui->cur_y, 0), state->h - 1);
ui->cur_visible = 1;
- }
-
- /* Always redraw if the cursor is on, or if it's just been
- * removed. */
- if (ui->cur_visible) nullret = empty;
- else if (cv) nullret = empty;
- else nullret = NULL;
+ nullret = empty;
+ } else
+ return NULL;
switch (action) {
case FLIP_LIGHT:
switch (action) {
case FLIP_LIGHT:
@@
-2306,6
+2304,7
@@
int main(int argc, char **argv)
/* Run the solvers easiest to hardest until we find one that
* can solve our puzzle. If it's soluble we know that the
* hardest (recursive) solver will always find the solution. */
/* Run the solvers easiest to hardest until we find one that
* can solve our puzzle. If it's soluble we know that the
* hardest (recursive) solver will always find the solution. */
+ nsol = sflags = 0;
for (diff = 0; diff <= DIFFCOUNT; diff++) {
printf("\nSolving with difficulty %d.\n", diff);
sflags = flags_from_difficulty(diff);
for (diff = 0; diff <= DIFFCOUNT; diff++) {
printf("\nSolving with difficulty %d.\n", diff);
sflags = flags_from_difficulty(diff);