aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Harris <bjh21@bjh21.me.uk>2022-12-12 21:15:37 +0000
committerBen Harris <bjh21@bjh21.me.uk>2022-12-14 00:34:36 +0000
commit562b29e102cdfa019b0f9d79e105f3f7d7e7bb0e (patch)
treead09607695443f6bf6a39a062afef0e5d4531528
parent712abb7719440e132750fedf1bab60db9c1023fd (diff)
downloadpuzzles-562b29e102cdfa019b0f9d79e105f3f7d7e7bb0e.zip
puzzles-562b29e102cdfa019b0f9d79e105f3f7d7e7bb0e.tar.gz
puzzles-562b29e102cdfa019b0f9d79e105f3f7d7e7bb0e.tar.bz2
puzzles-562b29e102cdfa019b0f9d79e105f3f7d7e7bb0e.tar.xz
Don't request a highlight colour in games that don't need one
This means that Range, Singles, and Tracks can now use the default background colour even if it's close to white. In the case of Singles I've left a dummy entry in the colour list so as not to renumber the rest and break everyone's environment variables. If Singles ever needs a new colour it can re-use that slot.
-rw-r--r--range.c3
-rw-r--r--singles.c5
-rw-r--r--tracks.c5
3 files changed, 6 insertions, 7 deletions
diff --git a/range.c b/range.c
index 103c136..d6d17eb 100644
--- a/range.c
+++ b/range.c
@@ -1624,7 +1624,6 @@ enum {
COL_USER = COL_GRID,
COL_ERROR,
COL_LOWLIGHT,
- COL_HIGHLIGHT = COL_ERROR, /* mkhighlight needs it, I don't */
COL_CURSOR = COL_LOWLIGHT,
NCOLOURS
};
@@ -1649,7 +1648,7 @@ static float *game_colours(frontend *fe, int *ncolours)
{
float *ret = snewn(3 * NCOLOURS, float);
- game_mkhighlight(fe, ret, COL_BACKGROUND, COL_HIGHLIGHT, COL_LOWLIGHT);
+ game_mkhighlight(fe, ret, COL_BACKGROUND, -1, COL_LOWLIGHT);
COLOUR(ret, COL_GRID, 0.0F, 0.0F, 0.0F);
COLOUR(ret, COL_ERROR, 1.0F, 0.0F, 0.0F);
diff --git a/singles.c b/singles.c
index 6c35162..42ecdbe 100644
--- a/singles.c
+++ b/singles.c
@@ -82,7 +82,7 @@ bool verbose = false;
#define FLASH_TIME 0.7F
enum {
- COL_BACKGROUND, COL_HIGHLIGHT, COL_LOWLIGHT,
+ COL_BACKGROUND, COL_UNUSED1, COL_LOWLIGHT,
COL_BLACK, COL_WHITE, COL_BLACKNUM, COL_GRID,
COL_CURSOR, COL_ERROR,
NCOLOURS
@@ -1620,12 +1620,13 @@ static float *game_colours(frontend *fe, int *ncolours)
float *ret = snewn(3 * NCOLOURS, float);
int i;
- game_mkhighlight(fe, ret, COL_BACKGROUND, COL_HIGHLIGHT, COL_LOWLIGHT);
+ game_mkhighlight(fe, ret, COL_BACKGROUND, -1, COL_LOWLIGHT);
for (i = 0; i < 3; i++) {
ret[COL_BLACK * 3 + i] = 0.0F;
ret[COL_BLACKNUM * 3 + i] = 0.4F;
ret[COL_WHITE * 3 + i] = 1.0F;
ret[COL_GRID * 3 + i] = ret[COL_LOWLIGHT * 3 + i];
+ ret[COL_UNUSED1 * 3 + i] = 0.0F; /* To placate an assertion. */
}
ret[COL_CURSOR * 3 + 0] = 0.2F;
ret[COL_CURSOR * 3 + 1] = 0.8F;
diff --git a/tracks.c b/tracks.c
index 9b5ef4c..afb9ff9 100644
--- a/tracks.c
+++ b/tracks.c
@@ -2463,8 +2463,7 @@ static void game_set_size(drawing *dr, game_drawstate *ds,
}
enum {
- COL_BACKGROUND, COL_LOWLIGHT, COL_HIGHLIGHT,
- COL_TRACK_BACKGROUND = COL_LOWLIGHT,
+ COL_BACKGROUND, COL_TRACK_BACKGROUND,
COL_GRID, COL_CLUE, COL_CURSOR,
COL_TRACK, COL_TRACK_CLUE, COL_SLEEPER,
COL_DRAGON, COL_DRAGOFF,
@@ -2477,7 +2476,7 @@ static float *game_colours(frontend *fe, int *ncolours)
float *ret = snewn(3 * NCOLOURS, float);
int i;
- game_mkhighlight(fe, ret, COL_BACKGROUND, COL_HIGHLIGHT, COL_LOWLIGHT);
+ game_mkhighlight(fe, ret, COL_BACKGROUND, -1, COL_TRACK_BACKGROUND);
for (i = 0; i < 3; i++) {
ret[COL_TRACK_CLUE * 3 + i] = 0.0F;