diff options
| author | Simon Tatham <anakin@pobox.com> | 2005-06-24 16:35:42 +0000 |
|---|---|---|
| committer | Simon Tatham <anakin@pobox.com> | 2005-06-24 16:35:42 +0000 |
| commit | 6e79ff9df5cd3429e6b75a43d61d760cbbe00939 (patch) | |
| tree | 01d4abd199f21b3de7b2ad4ef3011938087dfdc9 /guess.c | |
| parent | b873c87c37695433f3830a92d79ca40e42d008a2 (diff) | |
| download | puzzles-6e79ff9df5cd3429e6b75a43d61d760cbbe00939.zip puzzles-6e79ff9df5cd3429e6b75a43d61d760cbbe00939.tar.gz puzzles-6e79ff9df5cd3429e6b75a43d61d760cbbe00939.tar.bz2 puzzles-6e79ff9df5cd3429e6b75a43d61d760cbbe00939.tar.xz | |
Couple of presets.
[originally from svn r6011]
Diffstat (limited to 'guess.c')
| -rw-r--r-- | guess.c | 31 |
1 files changed, 26 insertions, 5 deletions
@@ -60,11 +60,6 @@ static game_params *default_params(void) return ret; } -static int game_fetch_preset(int i, char **name, game_params **params) -{ - return FALSE; -} - static void free_params(game_params *params) { sfree(params); @@ -77,6 +72,32 @@ static game_params *dup_params(game_params *params) return ret; } +static const struct { + char *name; + game_params params; +} guess_presets[] = { + {"Standard", {6, 4, 10, FALSE, TRUE}}, + {"Super", {8, 5, 12, FALSE, TRUE}}, +}; + + +static int game_fetch_preset(int i, char **name, game_params **params) +{ + if (i < 0 || i >= lenof(guess_presets)) + return FALSE; + + *name = dupstr(guess_presets[i].name); + /* + * get round annoying const issues + */ + { + game_params tmp = guess_presets[i].params; + *params = dup_params(&tmp); + } + + return TRUE; +} + static void decode_params(game_params *params, char const *string) { char const *p = string; |