X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/puzzles/blobdiff_plain/1d228b10b0f6bbc1fffb5442d2ad934a5e6aaaed..8d6149b6779c8c8c19eacde479d05712cd3209da:/nullgame.c diff --git a/nullgame.c b/nullgame.c index a071971..204f633 100644 --- a/nullgame.c +++ b/nullgame.c @@ -59,16 +59,11 @@ static game_params *dup_params(game_params *params) return ret; } -static game_params *decode_params(char const *string) +static void decode_params(game_params *params, char const *string) { - game_params *ret = snew(game_params); - - ret->FIXME = 0; - - return ret; } -static char *encode_params(game_params *params) +static char *encode_params(game_params *params, int full) { return dupstr("FIXME"); } @@ -88,17 +83,18 @@ static char *validate_params(game_params *params) return NULL; } -static char *new_game_seed(game_params *params, random_state *rs) +static char *new_game_desc(game_params *params, random_state *rs, + char **aux, int interactive) { return dupstr("FIXME"); } -static char *validate_seed(game_params *params, char *seed) +static char *validate_desc(game_params *params, char *desc) { return NULL; } -static game_state *new_game(game_params *params, char *seed) +static game_state *new_game(midend_data *me, game_params *params, char *desc) { game_state *state = snew(game_state); @@ -121,6 +117,17 @@ static void free_game(game_state *state) sfree(state); } +static char *solve_game(game_state *state, game_state *currstate, + char *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; @@ -130,21 +137,41 @@ static void free_ui(game_ui *ui) { } -static game_state *make_move(game_state *from, game_ui *ui, int x, int y, - int button) +static char *encode_ui(game_ui *ui) { return NULL; } -/* ---------------------------------------------------------------------- - * Drawing routines. - */ +static void decode_ui(game_ui *ui, char *encoding) +{ +} + +static void game_changed_state(game_ui *ui, game_state *oldstate, + game_state *newstate) +{ +} struct game_drawstate { int FIXME; }; -static void game_size(game_params *params, int *x, int *y) +static char *interpret_move(game_state *state, game_ui *ui, game_drawstate *ds, + int x, int y, int button) +{ + return NULL; +} + +static game_state *execute_move(game_state *state, char *move) +{ + return NULL; +} + +/* ---------------------------------------------------------------------- + * Drawing routines. + */ + +static void game_size(game_params *params, game_drawstate *ds, + int *x, int *y, int expand) { *x = *y = 200; /* FIXME */ } @@ -187,13 +214,13 @@ static void game_redraw(frontend *fe, game_drawstate *ds, game_state *oldstate, } static float game_anim_length(game_state *oldstate, game_state *newstate, - int dir) + int dir, game_ui *ui) { return 0.0F; } static float game_flash_length(game_state *oldstate, game_state *newstate, - int dir) + int dir, game_ui *ui) { return 0.0F; } @@ -203,6 +230,11 @@ static int game_wants_statusbar(void) return FALSE; } +static int game_timing_state(game_state *state) +{ + return TRUE; +} + #ifdef COMBINED #define thegame nullgame #endif @@ -217,14 +249,20 @@ const struct game thegame = { dup_params, FALSE, game_configure, custom_params, validate_params, - new_game_seed, - validate_seed, + new_game_desc, + validate_desc, new_game, dup_game, free_game, + FALSE, solve_game, + FALSE, game_text_format, new_ui, free_ui, - make_move, + encode_ui, + decode_ui, + game_changed_state, + interpret_move, + execute_move, game_size, game_colours, game_new_drawstate, @@ -233,4 +271,6 @@ const struct game thegame = { game_anim_length, game_flash_length, game_wants_statusbar, + FALSE, game_timing_state, + 0, /* mouse_priorities */ };