mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-20 23:51:29 -07:00
Refactoring from James H: the highlight and lowlight colour setup
common to Fifteen, Sixteen, Twiddle and Pegs is now a utility function in misc.c. [originally from svn r6076]
This commit is contained in:
22
pegs.c
22
pegs.c
@ -845,28 +845,8 @@ static void game_set_size(game_drawstate *ds, game_params *params,
|
||||
static float *game_colours(frontend *fe, game_state *state, int *ncolours)
|
||||
{
|
||||
float *ret = snewn(3 * NCOLOURS, float);
|
||||
int i;
|
||||
float max;
|
||||
|
||||
frontend_default_colour(fe, &ret[COL_BACKGROUND * 3]);
|
||||
|
||||
/*
|
||||
* Drop the background colour so that the highlight is
|
||||
* noticeably brighter than it while still being under 1.
|
||||
*/
|
||||
max = ret[COL_BACKGROUND*3];
|
||||
for (i = 1; i < 3; i++)
|
||||
if (ret[COL_BACKGROUND*3+i] > max)
|
||||
max = ret[COL_BACKGROUND*3+i];
|
||||
if (max * 1.2F > 1.0F) {
|
||||
for (i = 0; i < 3; i++)
|
||||
ret[COL_BACKGROUND*3+i] /= (max * 1.2F);
|
||||
}
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
ret[COL_HIGHLIGHT * 3 + i] = ret[COL_BACKGROUND * 3 + i] * 1.2F;
|
||||
ret[COL_LOWLIGHT * 3 + i] = ret[COL_BACKGROUND * 3 + i] * 0.8F;
|
||||
}
|
||||
game_mkhighlight(fe, ret, COL_BACKGROUND, COL_HIGHLIGHT, COL_LOWLIGHT);
|
||||
|
||||
ret[COL_PEG * 3 + 0] = 0.0F;
|
||||
ret[COL_PEG * 3 + 1] = 0.0F;
|
||||
|
Reference in New Issue
Block a user