Missed a vital semicolon off the Cygwin version.c makefile fragment.
[sgt/puzzles] / cube.c
diff --git a/cube.c b/cube.c
index 33144b6..0933928 100644 (file)
--- a/cube.c
+++ b/cube.c
@@ -589,7 +589,8 @@ static void classify_grid_square_callback(void *ctx, struct grid_square *sq)
        data->squareindex++;
 }
 
-static char *new_game_seed(game_params *params, random_state *rs)
+static char *new_game_seed(game_params *params, random_state *rs,
+                          game_aux_info **aux)
 {
     struct grid_data data;
     int i, j, k, m, area, facesperclass;
@@ -690,6 +691,11 @@ static char *new_game_seed(game_params *params, random_state *rs)
     return seed;
 }
 
+static void game_free_aux_info(game_aux_info *aux)
+{
+    assert(!"Shouldn't happen");
+}
+
 static void add_grid_square_callback(void *ctx, struct grid_square *sq)
 {
     game_state *state = (game_state *)ctx;
@@ -979,6 +985,17 @@ static void free_game(game_state *state)
     sfree(state);
 }
 
+static game_state *solve_game(game_state *state, game_aux_info *aux,
+                             char **error)
+{
+    return NULL;
+}
+
+static char *game_text_format(game_state *state)
+{
+    return NULL;
+}
+
 static game_ui *new_ui(game_state *state)
 {
     return NULL;
@@ -1000,23 +1017,23 @@ static game_state *make_move(game_state *from, game_ui *ui,
     struct solid *poly;
 
     /*
-     * All moves are made with the cursor keys.
+     * All moves are made with the cursor keys or numeric keypad.
      */
-    if (button == CURSOR_UP)
+    if (button == CURSOR_UP || button == (MOD_NUM_KEYPAD | '8'))
         direction = UP;
-    else if (button == CURSOR_DOWN)
+    else if (button == CURSOR_DOWN || button == (MOD_NUM_KEYPAD | '2'))
         direction = DOWN;
-    else if (button == CURSOR_LEFT)
+    else if (button == CURSOR_LEFT || button == (MOD_NUM_KEYPAD | '4'))
         direction = LEFT;
-    else if (button == CURSOR_RIGHT)
+    else if (button == CURSOR_RIGHT || button == (MOD_NUM_KEYPAD | '6'))
         direction = RIGHT;
-    else if (button == CURSOR_UP_LEFT)
+    else if (button == (MOD_NUM_KEYPAD | '7'))
         direction = UP_LEFT;
-    else if (button == CURSOR_DOWN_LEFT)
+    else if (button == (MOD_NUM_KEYPAD | '1'))
         direction = DOWN_LEFT;
-    else if (button == CURSOR_UP_RIGHT)
+    else if (button == (MOD_NUM_KEYPAD | '9'))
         direction = UP_RIGHT;
-    else if (button == CURSOR_DOWN_RIGHT)
+    else if (button == (MOD_NUM_KEYPAD | '3'))
         direction = DOWN_RIGHT;
     else
         return NULL;
@@ -1541,10 +1558,13 @@ const struct game thegame = {
     TRUE, game_configure, custom_params,
     validate_params,
     new_game_seed,
+    game_free_aux_info,
     validate_seed,
     new_game,
     dup_game,
     free_game,
+    FALSE, solve_game,
+    FALSE, game_text_format,
     new_ui,
     free_ui,
     make_move,