47 enum color_std stdcolor;
51 for (stdcolor = color_std_begin(); stdcolor != color_std_end();
52 stdcolor = color_std_next(stdcolor)) {
56 color_std_name(stdcolor))) {
57 *(colors->
stdcolors + stdcolor) = prgbcolor;
72 enum color_std stdcolor;
74 for (stdcolor = color_std_begin(); stdcolor != color_std_end();
75 stdcolor = color_std_next(stdcolor)) {
117 return pplayer->
rgb != NULL;
126 const struct player *pplayer)
138 const struct terrain *pterrain)
151 struct color **candidates,
int ncandidates)
155 struct color *best = NULL;
160 for (i = 0; i < ncandidates; i++) {
162 int diff =
ABS(sbright - cbright);
164 if (best == NULL || diff > bestdiff) {
165 best = candidates[i];
void color_system_free(struct color_system *colors)
struct color * color_best_contrast(struct color *subject, struct color **candidates, int ncandidates)
struct color * get_player_color(const struct tileset *t, const struct player *pplayer)
struct color_system * color_system_read(struct section_file *file)
struct color * ensure_color(struct rgbcolor *rgb)
bool player_has_color(const struct player *pplayer)
struct color * get_color(const struct tileset *t, enum color_std stdcolor)
struct color * get_terrain_color(const struct tileset *t, const struct terrain *pterrain)
struct color * color_alloc(int r, int g, int b)
int color_brightness_score(struct color *pcolor)
#define fc_assert_ret_val(condition, val)
#define log_error(message,...)
#define fc_calloc(n, esz)
const char * secfile_error(void)
void rgbcolor_destroy(struct rgbcolor *prgbcolor)
bool rgbcolor_load(struct section_file *file, struct rgbcolor **prgbcolor, char *path,...)
struct rgbcolor * rgbcolor_new(int r, int g, int b)
struct rgbcolor ** stdcolors
struct color_system * get_color_system(const struct tileset *t)