aboutsummaryrefslogtreecommitdiff
path: root/puzzles.h
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2005-06-28 11:14:09 +0000
committerSimon Tatham <anakin@pobox.com>2005-06-28 11:14:09 +0000
commit89fdc09c29f1219a7660ad6d1839cc914a009c02 (patch)
treec9e9e95e109aa01df1a0ca8d310467929cf3049b /puzzles.h
parent6c9beb697bd61c7e8d0eac8b7fce54cde134d9c9 (diff)
downloadpuzzles-89fdc09c29f1219a7660ad6d1839cc914a009c02.zip
puzzles-89fdc09c29f1219a7660ad6d1839cc914a009c02.tar.gz
puzzles-89fdc09c29f1219a7660ad6d1839cc914a009c02.tar.bz2
puzzles-89fdc09c29f1219a7660ad6d1839cc914a009c02.tar.xz
More serialisation changes: the game_aux_info structure has now been
retired, and replaced with a simple string. Most of the games which use it simply encode the string in the same way that the Solve move will also be encoded, i.e. solve_game() simply returns dupstr(aux_info). Again, this is a better approach than writing separate game_aux_info serialise/deserialise functions because doing it this way is self-testing (the strings are created and parsed during the course of any Solve operation at all). [originally from svn r6029]
Diffstat (limited to 'puzzles.h')
-rw-r--r--puzzles.h6
1 files changed, 2 insertions, 4 deletions
diff --git a/puzzles.h b/puzzles.h
index 17b0b00..5ee391b 100644
--- a/puzzles.h
+++ b/puzzles.h
@@ -70,7 +70,6 @@ typedef struct midend_data midend_data;
typedef struct random_state random_state;
typedef struct game_params game_params;
typedef struct game_state game_state;
-typedef struct game_aux_info game_aux_info;
typedef struct game_ui game_ui;
typedef struct game_drawstate game_drawstate;
typedef struct game game;
@@ -262,15 +261,14 @@ struct game {
game_params *(*custom_params)(config_item *cfg);
char *(*validate_params)(game_params *params);
char *(*new_desc)(game_params *params, random_state *rs,
- game_aux_info **aux, int interactive);
- void (*free_aux_info)(game_aux_info *aux);
+ char **aux, int interactive);
char *(*validate_desc)(game_params *params, char *desc);
game_state *(*new_game)(midend_data *me, game_params *params, char *desc);
game_state *(*dup_game)(game_state *state);
void (*free_game)(game_state *state);
int can_solve;
char *(*solve)(game_state *orig, game_state *curr,
- game_aux_info *aux, char **error);
+ char *aux, char **error);
int can_format_as_text;
char *(*text_format)(game_state *state);
game_ui *(*new_ui)(game_state *state);