1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
# Colors
DDA is colorful game. You can use several foreground and background colors in various places:
* map data (terrain and furniture);
* item data;
* text data;
* etc.
**Note:** Map data objects can only have one color-related node defined (either `color` or `bgcolor`).
## Color string format
Whenever color is defined in JSON it should be defined in following format: `Prefix_Foreground_Background`.
`Prefix` can take one of following values:
* `c_` - default color prefix (can be omitted);
* `i_` - optional prefix which indicates that foreground color should be inverted (special rules will be applied to foreground and background colors);
* `h_` - optional prefix which indicates that foreground color should be highlighted (special rules will be applied to foreground and background colors).
`Foreground` - defines mandatory color of foreground/ink/font.
`Background` - defines optional color of background/paper.
**Note:** Not all foreground + background pairs are defined by their full name. Use in-game Color manager to see all color names.
**Note:** If color was not found by its name, then `c_unset` is used for `Foreground` and `i_white` for `Background`.
## Examples of color strings
- `c_white` - `white` color (with default prefix `c_`);
- `black` - `black` color (default prefix `c_` is omitted);
- `i_red` - inverted `red` color;
- `dark_gray_white` - `dark_gray` foreground color with `white` background color;
- `light_gray_light_red` - `light_gray` foreground color with `light_red` background color;
- `dkgray_red` - `dark_gray` foreground color with `red` background color (deprecated prefix `dk` instead of `dark_`);
- `ltblue_red` - `light_blue` foreground color with `red` background color (deprecated prefix `lt` instead of `light_`).
## Color code
Color code is short string which defines color and can be used, for example, in maps notes.
## Possible colors
| Color (image) | Color name (dda) | Color name (curses) | Default R,G,B values | Color code | Notes |
|:--------------------------------------------------------:|:------------------:|:-------------------:|:--------------------:|:----------:|:------------------------------------------------------:|
|  | `black` | `BLACK` | `0,0,0` | | |
|  | `red` | `RED` | `255,0,0` | `R` | |
|  | `green` | `GREEN` | `0,110,0` | `G` | |
|  | `brown` | `BROWN` | `92,51,23` | `br` | |
|  | `blue` | `BLUE` | `0,0,200` | `B` | |
|  | `magenta` | `MAGENTA` | `139,58,98` | `P` | |
|  | `cyan` | `CYAN` | `0,150,180` | `C` | |
|  | `light_gray` | `GRAY` | `150,150,150` | `lg` | deprecated `lt` prefix can be used instead of `light_` |
|  | `dark_gray` | `DGRAY` | `99,99,99` | `dg` | deprecated `dk` prefix can be used instead of `dark_` |
|  | `light_red` | `LRED` | `255,150,150` | | deprecated `lt` prefix can be used instead of `light_` |
|  | `light_green` | `LGREEN` | `0,255,0` | `g` | deprecated `lt` prefix can be used instead of `light_` |
|  | `yellow` | `YELLOW` | `255,255,0` | | |
|  | `light_blue` | `LBLUE` | `100,100,255` | `b` | deprecated `lt` prefix can be used instead of `light_` |
|  | `pink` | `LMAGENTA` | `254,0,254` | `lm` | |
|  | `light_cyan` | `LCYAN` | `0,240,255` | `c` | deprecated `lt` prefix can be used instead of `light_` |
|  | `white` | `WHITE` | `255,255,255` | `W` | |
**Note:** Default RGB values are taken from file `\data\raw\colors.json`.
**Note:** RGB values can be redefined in file `\config\base_colors.json`.
## Color rules
There are two types of special color transformation which can affect both foreground and background color:
* inversion;
* highlight.
**Note:** Color rules can be redefined (for example, `\data\raw\color_templates\no_bright_background.json`).
|