X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/puzzles/blobdiff_plain/28b5987d5dbdcb396c07b937a638590e5361361e..9350f6e3b9903d3dec20d261b4688125fead4f01:/puzzles.h?ds=inline diff --git a/puzzles.h b/puzzles.h index 57445ab..e35bece 100644 --- a/puzzles.h +++ b/puzzles.h @@ -218,6 +218,10 @@ void obfuscate_bitmap(unsigned char *bmp, int bits, int decode); char *bin2hex(const unsigned char *in, int inlen); unsigned char *hex2bin(const char *in, int outlen); +/* Sets (and possibly dims) background from frontend default colour, + * and auto-generates highlight and lowlight colours too. */ +void game_mkhighlight(frontend *fe, float *ret, + int background, int highlight, int lowlight); /* * version.c @@ -265,7 +269,7 @@ struct game { int can_configure; config_item *(*configure)(game_params *params); game_params *(*custom_params)(config_item *cfg); - char *(*validate_params)(game_params *params); + char *(*validate_params)(game_params *params, int full); char *(*new_desc)(game_params *params, random_state *rs, char **aux, int interactive); char *(*validate_desc)(game_params *params, char *desc); @@ -286,8 +290,9 @@ struct game { char *(*interpret_move)(game_state *state, game_ui *ui, game_drawstate *ds, int x, int y, int button); game_state *(*execute_move)(game_state *state, char *move); - void (*size)(game_params *params, game_drawstate *ds, int *x, int *y, - int expand); + int preferred_tilesize; + void (*compute_size)(game_params *params, int tilesize, int *x, int *y); + void (*set_size)(game_drawstate *ds, game_params *params, int tilesize); float *(*colours)(frontend *fe, game_state *state, int *ncolours); game_drawstate *(*new_drawstate)(game_state *state); void (*free_drawstate)(game_drawstate *ds);