1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-16 11:33:03 +01:00

Clean up translucent palettes

This commit is contained in:
Marijn van der Werf
2016-11-10 13:20:47 +01:00
parent 06b128bac7
commit bb615c60ee
6 changed files with 241 additions and 286 deletions

View File

@@ -106,16 +106,6 @@ enum
SPR_PALETTE_3109 = 3109,
SPR_PALETTE_3110 = 3110,
SPR_PALETTE_WATER = 4947,
SPR_PALETTE_4948 = 4948,
SPR_PALETTE_4949 = 4949,
SPR_PALETTE_4950 = 4950,
SPR_PALETTE_DARKEN_3 = 4951,
SPR_PALETTE_4952 = 4952,
SPR_PALETTE_DARKEN_1 = 4953,
SPR_PALETTE_DARKEN_2 = 4954,
SPR_PALETTE_4955 = 4955,
SPR_PALETTE_BLACK = 4915,
SPR_PALETTE_GREY = 4916,
SPR_PALETTE_WHITE = 4917,
@@ -148,7 +138,75 @@ enum
SPR_PALETTE_DARK_PINK = 4944,
SPR_PALETTE_BRIGHT_PINK = 4945,
SPR_PALETTE_LIGHT_PINK = 4946,
SPR_PALETTE_WATER = 4947,
SPR_PALETTE_4948 = 4948,
SPR_PALETTE_4949 = 4949,
SPR_PALETTE_4950 = 4950,
SPR_PALETTE_DARKEN_3 = 4951,
SPR_PALETTE_4952 = 4952,
SPR_PALETTE_DARKEN_1 = 4953,
SPR_PALETTE_DARKEN_2 = 4954,
SPR_PALETTE_4955 = 4955,
SPR_PALETTE_TRANSLUCENT_GREY = 4956,
SPR_PALETTE_TRANSLUCENT_GREY_HIGHLIGHT = 4957,
SPR_PALETTE_TRANSLUCENT_GREY_SHADOW = 4958,
SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE = 4959,
SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE_HIGHLIGHT = 4960,
SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE_SHADOW = 4961,
SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED = 4962,
SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED_HIGHLIGHT = 4963,
SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED_SHADOW = 4964,
SPR_PALETTE_TRANSLUCENT_DARK_GREEN = 4965,
SPR_PALETTE_TRANSLUCENT_DARK_GREEN_HIGHLIGHT = 4966,
SPR_PALETTE_TRANSLUCENT_DARK_GREEN_SHADOW = 4967,
SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE = 4968,
SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE_HIGHLIGHT = 4969,
SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE_SHADOW = 4970,
SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN = 4971,
SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_HIGHLIGHT = 4972,
SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_SHADOW = 4973,
SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN = 4974,
SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN_HIGHLIGHT = 4975,
SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN_SHADOW = 4976,
SPR_PALETTE_TRANSLUCENT_YELLOW = 4977,
SPR_PALETTE_TRANSLUCENT_YELLOW_HIGHLIGHT = 4978,
SPR_PALETTE_TRANSLUCENT_YELLOW_SHADOW = 4979,
SPR_PALETTE_TRANSLUCENT_MOSS_GREEN = 4980,
SPR_PALETTE_TRANSLUCENT_MOSS_GREEN_HIGHLIGHT = 4981,
SPR_PALETTE_TRANSLUCENT_MOSS_GREEN_SHADOW = 4982,
SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN = 4983,
SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN_HIGHLIGHT = 4984,
SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN_SHADOW = 4985,
SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN = 4986,
SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN_HIGHLIGHT = 4987,
SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN_SHADOW = 4988,
SPR_PALETTE_TRANSLUCENT_SALMON_PINK = 4989,
SPR_PALETTE_TRANSLUCENT_SALMON_PINK_HIGHLIGHT = 4990,
SPR_PALETTE_TRANSLUCENT_SALMON_PINK_SHADOW = 4991,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE = 4992,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE_HIGHLIGHT = 4993,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE_SHADOW = 4994,
SPR_PALETTE_TRANSLUCENT_BRIGHT_RED = 4995,
SPR_PALETTE_TRANSLUCENT_BRIGHT_RED_HIGHLIGHT = 4996,
SPR_PALETTE_TRANSLUCENT_BRIGHT_RED_SHADOW = 4997,
SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE = 4998,
SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE_HIGHLIGHT = 4999,
SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE_SHADOW = 5000,
SPR_PALETTE_TRANSLUCENT_TEAL = 5001,
SPR_PALETTE_TRANSLUCENT_TEAL_HIGHLIGHT = 5002,
SPR_PALETTE_TRANSLUCENT_TEAL_SHADOW = 5003,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK = 5004,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK_HIGHLIGHT = 5005,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK_SHADOW = 5006,
SPR_PALETTE_TRANSLUCENT_DARK_BROWN = 5007,
SPR_PALETTE_TRANSLUCENT_DARK_BROWN_HIGHLIGHT = 5008,
SPR_PALETTE_TRANSLUCENT_DARK_BROWN_SHADOW = 5009,
SPR_PALETTE_TRANSLUCENT_LIGHT_PINK = 5010,
SPR_PALETTE_TRANSLUCENT_LIGHT_PINK_HIGHLIGHT = 5011,
SPR_PALETTE_TRANSLUCENT_LIGHT_PINK_SHADOW = 5012,
SPR_PALETTE_TRANSLUCENT_WHITE = 5013,
SPR_PALETTE_TRANSLUCENT_WHITE_HIGHLIGHT = 5014,
SPR_PALETTE_TRANSLUCENT_WHITE_SHADOW = 5015,
SPR_PALETTE_GLASS_BLACK = 5016,
SPR_PALETTE_GLASS_GREY = 5017,
SPR_PALETTE_GLASS_WHITE = 5018,
@@ -275,27 +333,66 @@ const uint16 palette_to_g1_offset[PALETTE_TO_G1_OFFSET_COUNT] = {
SPR_PALETTE_DARKEN_2, // PALETTE_DARKEN_2 (construction marker)
SPR_PALETTE_4955, // PALETTE_51
// base shadow highlight
4956, 0x135D, 0x135E, // PALETTE_TRANSLUCENT_GREY
4959, 0x1360, 0x1361, // PALETTE_TRANSLUCENT_LIGHT_BLUE
4962, 0x1363, 0x1364, // PALETTE_TRANSLUCENT_BORDEAUX_RED
4965, 0x1366, 0x1367, // PALETTE_TRANSLUCENT_DARK_GREEN
4968, 0x1369, 0x136A, // PALETTE_TRANSLUCENT_LIGHT_PURPLE
4971, 0x136C, 0x136D, // PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN
4974, 0x136F, 0x1370, // PALETTE_TRANSLUCENT_LIGHT_BROWN
4977, 0x1372, 0x1373, // PALETTE_TRANSLUCENT_YELLOW
4980, 0x1375, 0x1376, // PALETTE_TRANSLUCENT_MOSS_GREEN
4983, 0x1378, 0x1379, // PALETTE_TRANSLUCENT_OLIVE_GREEN
4986, 0x137B, 0x137C, // PALETTE_TRANSLUCENT_BRIGHT_GREEN
4989, 0x137E, 0x137F, // PALETTE_TRANSLUCENT_SALMON_PINK
4992, 0x1381, 0x1382, // PALETTE_TRANSLUCENT_BRIGHT_PURPLE
4995, 0x1384, 0x1385, // PALETTE_TRANSLUCENT_BRIGHT_RED
4998, 0x1387, 0x1388, // PALETTE_TRANSLUCENT_LIGHT_ORANGE
5001, 0x138A, 0x138B, // PALETTE_TRANSLUCENT_TEAL
5004, 0x138D, 0x138E, // PALETTE_TRANSLUCENT_BRIGHT_PINK
5007, 0x1390, 0x1391, // PALETTE_TRANSLUCENT_DARK_BROWN
5010, 0x1393, 0x1394, // PALETTE_TRANSLUCENT_LIGHT_PINK
5013, 0x1396, 0x1397, // PALETTE_TRANSLUCENT_WHITE
SPR_PALETTE_TRANSLUCENT_GREY,
SPR_PALETTE_TRANSLUCENT_GREY_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_GREY_SHADOW,
SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE,
SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE_SHADOW,
SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED,
SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED_SHADOW,
SPR_PALETTE_TRANSLUCENT_DARK_GREEN,
SPR_PALETTE_TRANSLUCENT_DARK_GREEN_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_DARK_GREEN_SHADOW,
SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE,
SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE_SHADOW,
SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN,
SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_SHADOW,
SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN,
SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN_SHADOW,
SPR_PALETTE_TRANSLUCENT_YELLOW,
SPR_PALETTE_TRANSLUCENT_YELLOW_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_YELLOW_SHADOW,
SPR_PALETTE_TRANSLUCENT_MOSS_GREEN,
SPR_PALETTE_TRANSLUCENT_MOSS_GREEN_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_MOSS_GREEN_SHADOW,
SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN,
SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN_SHADOW,
SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN,
SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN_SHADOW,
SPR_PALETTE_TRANSLUCENT_SALMON_PINK,
SPR_PALETTE_TRANSLUCENT_SALMON_PINK_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_SALMON_PINK_SHADOW,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE_SHADOW,
SPR_PALETTE_TRANSLUCENT_BRIGHT_RED,
SPR_PALETTE_TRANSLUCENT_BRIGHT_RED_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_BRIGHT_RED_SHADOW,
SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE,
SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE_SHADOW,
SPR_PALETTE_TRANSLUCENT_TEAL,
SPR_PALETTE_TRANSLUCENT_TEAL_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_TEAL_SHADOW,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK_SHADOW,
SPR_PALETTE_TRANSLUCENT_DARK_BROWN,
SPR_PALETTE_TRANSLUCENT_DARK_BROWN_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_DARK_BROWN_SHADOW,
SPR_PALETTE_TRANSLUCENT_LIGHT_PINK,
SPR_PALETTE_TRANSLUCENT_LIGHT_PINK_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_LIGHT_PINK_SHADOW,
SPR_PALETTE_TRANSLUCENT_WHITE,
SPR_PALETTE_TRANSLUCENT_WHITE_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_WHITE_SHADOW,
SPR_PALETTE_GLASS_BLACK,
SPR_PALETTE_GLASS_GREY,
@@ -331,238 +428,50 @@ const uint16 palette_to_g1_offset[PALETTE_TO_G1_OFFSET_COUNT] = {
SPR_PALETTE_GLASS_LIGHT_PINK,
};
/** rct2: 0x009DEDF4 */
const FILTER_PALETTE_ID _9DEDF4[] = {
0, // COLOUR_BLACK
0, // COLOUR_GREY
0, // COLOUR_WHITE
0, // COLOUR_DARK_PURPLE
0, // COLOUR_LIGHT_PURPLE
0, // COLOUR_BRIGHT_PURPLE
0, // COLOUR_DARK_BLUE
0, // COLOUR_LIGHT_BLUE
0, // COLOUR_ICY_BLUE
0, // COLOUR_TEAL
0, // COLOUR_AQUAMARINE
0, // COLOUR_SATURATED_GREEN
0, // COLOUR_DARK_GREEN
0, // COLOUR_MOSS_GREEN
0, // COLOUR_BRIGHT_GREEN
0, // COLOUR_OLIVE_GREEN
0, // COLOUR_DARK_OLIVE_GREEN
0, // COLOUR_BRIGHT_YELLOW
0, // COLOUR_YELLOW
0, // COLOUR_DARK_YELLOW
0, // COLOUR_LIGHT_ORANGE
0, // COLOUR_DARK_ORANGE
0, // COLOUR_LIGHT_BROWN
0, // COLOUR_SATURATED_BROWN
0, // COLOUR_DARK_BROWN
0, // COLOUR_SALMON_PINK
0, // COLOUR_BORDEAUX_RED
0, // COLOUR_SATURATED_RED
0, // COLOUR_BRIGHT_RED
0, // COLOUR_DARK_PINK
0, // COLOUR_BRIGHT_PINK
0, // COLOUR_LIGHT_PINK
#define WINDOW_PALETTE_GREY {PALETTE_TRANSLUCENT_GREY, PALETTE_TRANSLUCENT_GREY_HIGHLIGHT, PALETTE_TRANSLUCENT_GREY_SHADOW}
#define WINDOW_PALETTE_LIGHT_PURPLE {PALETTE_TRANSLUCENT_LIGHT_PURPLE, PALETTE_TRANSLUCENT_LIGHT_PURPLE_HIGHLIGHT, PALETTE_TRANSLUCENT_LIGHT_PURPLE_SHADOW}
#define WINDOW_PALETTE_LIGHT_BLUE {PALETTE_TRANSLUCENT_LIGHT_BLUE, PALETTE_TRANSLUCENT_LIGHT_BLUE_HIGHLIGHT, PALETTE_TRANSLUCENT_LIGHT_BLUE_SHADOW}
#define WINDOW_PALETTE_TEAL {PALETTE_TRANSLUCENT_TEAL, PALETTE_TRANSLUCENT_TEAL_HIGHLIGHT, PALETTE_TRANSLUCENT_TEAL_SHADOW}
#define WINDOW_PALETTE_BRIGHT_GREEN {PALETTE_TRANSLUCENT_BRIGHT_GREEN, PALETTE_TRANSLUCENT_BRIGHT_GREEN_HIGHLIGHT, PALETTE_TRANSLUCENT_BRIGHT_GREEN_SHADOW}
#define WINDOW_PALETTE_YELLOW {PALETTE_TRANSLUCENT_YELLOW, PALETTE_TRANSLUCENT_YELLOW_HIGHLIGHT, PALETTE_TRANSLUCENT_YELLOW_SHADOW}
#define WINDOW_PALETTE_LIGHT_ORANGE {PALETTE_TRANSLUCENT_LIGHT_ORANGE, PALETTE_TRANSLUCENT_LIGHT_ORANGE_HIGHLIGHT, PALETTE_TRANSLUCENT_LIGHT_ORANGE_SHADOW}
#define WINDOW_PALETTE_LIGHT_BROWN {PALETTE_TRANSLUCENT_LIGHT_BROWN, PALETTE_TRANSLUCENT_LIGHT_BROWN_HIGHLIGHT, PALETTE_TRANSLUCENT_LIGHT_BROWN_SHADOW}
#define WINDOW_PALETTE_BRIGHT_RED {PALETTE_TRANSLUCENT_BRIGHT_RED, PALETTE_TRANSLUCENT_BRIGHT_RED_HIGHLIGHT, PALETTE_TRANSLUCENT_BRIGHT_RED_SHADOW}
#define WINDOW_PALETTE_BRIGHT_PINK {PALETTE_TRANSLUCENT_BRIGHT_PINK, PALETTE_TRANSLUCENT_BRIGHT_PINK_HIGHLIGHT, PALETTE_TRANSLUCENT_BRIGHT_PINK_SHADOW}
0, // COLOUR_BLACK | COLOUR_FLAG_OUTLINE
0, // COLOUR_GREY | COLOUR_FLAG_OUTLINE
0, // COLOUR_WHITE | COLOUR_FLAG_OUTLINE
0, // COLOUR_DARK_PURPLE | COLOUR_FLAG_OUTLINE
0, // COLOUR_LIGHT_PURPLE | COLOUR_FLAG_OUTLINE
0, // COLOUR_BRIGHT_PURPLE | COLOUR_FLAG_OUTLINE
0, // COLOUR_DARK_BLUE | COLOUR_FLAG_OUTLINE
0, // COLOUR_LIGHT_BLUE | COLOUR_FLAG_OUTLINE
0, // COLOUR_ICY_BLUE | COLOUR_FLAG_OUTLINE
0, // COLOUR_TEAL | COLOUR_FLAG_OUTLINE
0, // COLOUR_AQUAMARINE | COLOUR_FLAG_OUTLINE
0, // COLOUR_SATURATED_GREEN | COLOUR_FLAG_OUTLINE
0, // COLOUR_DARK_GREEN | COLOUR_FLAG_OUTLINE
0, // COLOUR_MOSS_GREEN | COLOUR_FLAG_OUTLINE
0, // COLOUR_BRIGHT_GREEN | COLOUR_FLAG_OUTLINE
0, // COLOUR_OLIVE_GREEN | COLOUR_FLAG_OUTLINE
0, // COLOUR_DARK_OLIVE_GREEN | COLOUR_FLAG_OUTLINE
0, // COLOUR_BRIGHT_YELLOW | COLOUR_FLAG_OUTLINE
0, // COLOUR_YELLOW | COLOUR_FLAG_OUTLINE
0, // COLOUR_DARK_YELLOW | COLOUR_FLAG_OUTLINE
0, // COLOUR_LIGHT_ORANGE | COLOUR_FLAG_OUTLINE
0, // COLOUR_DARK_ORANGE | COLOUR_FLAG_OUTLINE
0, // COLOUR_LIGHT_BROWN | COLOUR_FLAG_OUTLINE
0, // COLOUR_SATURATED_BROWN | COLOUR_FLAG_OUTLINE
0, // COLOUR_DARK_BROWN | COLOUR_FLAG_OUTLINE
0, // COLOUR_SALMON_PINK | COLOUR_FLAG_OUTLINE
0, // COLOUR_BORDEAUX_RED | COLOUR_FLAG_OUTLINE
0, // COLOUR_SATURATED_RED | COLOUR_FLAG_OUTLINE
0, // COLOUR_BRIGHT_RED | COLOUR_FLAG_OUTLINE
0, // COLOUR_DARK_PINK | COLOUR_FLAG_OUTLINE
0, // COLOUR_BRIGHT_PINK | COLOUR_FLAG_OUTLINE
0, // COLOUR_LIGHT_PINK | COLOUR_FLAG_OUTLINE
0, // COLOUR_BLACK | COLOUR_FLAG_INSET
0, // COLOUR_GREY | COLOUR_FLAG_INSET
0, // COLOUR_WHITE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_PURPLE | COLOUR_FLAG_INSET
0, // COLOUR_LIGHT_PURPLE | COLOUR_FLAG_INSET
0, // COLOUR_BRIGHT_PURPLE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_BLUE | COLOUR_FLAG_INSET
0, // COLOUR_LIGHT_BLUE | COLOUR_FLAG_INSET
0, // COLOUR_ICY_BLUE | COLOUR_FLAG_INSET
0, // COLOUR_TEAL | COLOUR_FLAG_INSET
0, // COLOUR_AQUAMARINE | COLOUR_FLAG_INSET
0, // COLOUR_SATURATED_GREEN | COLOUR_FLAG_INSET
0, // COLOUR_DARK_GREEN | COLOUR_FLAG_INSET
0, // COLOUR_MOSS_GREEN | COLOUR_FLAG_INSET
0, // COLOUR_BRIGHT_GREEN | COLOUR_FLAG_INSET
0, // COLOUR_OLIVE_GREEN | COLOUR_FLAG_INSET
0, // COLOUR_DARK_OLIVE_GREEN | COLOUR_FLAG_INSET
0, // COLOUR_BRIGHT_YELLOW | COLOUR_FLAG_INSET
0, // COLOUR_YELLOW | COLOUR_FLAG_INSET
0, // COLOUR_DARK_YELLOW | COLOUR_FLAG_INSET
0, // COLOUR_LIGHT_ORANGE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_ORANGE | COLOUR_FLAG_INSET
0, // COLOUR_LIGHT_BROWN | COLOUR_FLAG_INSET
0, // COLOUR_SATURATED_BROWN | COLOUR_FLAG_INSET
0, // COLOUR_DARK_BROWN | COLOUR_FLAG_INSET
0, // COLOUR_SALMON_PINK | COLOUR_FLAG_INSET
0, // COLOUR_BORDEAUX_RED | COLOUR_FLAG_INSET
0, // COLOUR_SATURATED_RED | COLOUR_FLAG_INSET
0, // COLOUR_BRIGHT_RED | COLOUR_FLAG_INSET
0, // COLOUR_DARK_PINK | COLOUR_FLAG_INSET
0, // COLOUR_BRIGHT_PINK | COLOUR_FLAG_INSET
0, // COLOUR_LIGHT_PINK | COLOUR_FLAG_INSET
0, // COLOUR_BLACK | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_GREY | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_WHITE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_PURPLE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_LIGHT_PURPLE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_BRIGHT_PURPLE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_BLUE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_LIGHT_BLUE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_ICY_BLUE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_TEAL | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_AQUAMARINE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_SATURATED_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_MOSS_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_BRIGHT_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_OLIVE_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_OLIVE_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_BRIGHT_YELLOW | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_YELLOW | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_YELLOW | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_LIGHT_ORANGE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_ORANGE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_LIGHT_BROWN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_SATURATED_BROWN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_BROWN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_SALMON_PINK | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_BORDEAUX_RED | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_SATURATED_RED | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_BRIGHT_RED | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_DARK_PINK | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_BRIGHT_PINK | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
0, // COLOUR_LIGHT_PINK | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_INSET
PALETTE_TRANSLUCENT_GREY, // COLOUR_BLACK | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_GREY, // COLOUR_GREY | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_WHITE, // COLOUR_WHITE | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_LIGHT_PURPLE, // COLOUR_DARK_PURPLE | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_LIGHT_PURPLE, // COLOUR_LIGHT_PURPLE | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_BRIGHT_PURPLE, // COLOUR_BRIGHT_PURPLE | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_LIGHT_BLUE, // COLOUR_DARK_BLUE | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_LIGHT_BLUE, // COLOUR_LIGHT_BLUE | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_LIGHT_BLUE, // COLOUR_ICY_BLUE | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_TEAL, // COLOUR_TEAL | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_TEAL, // COLOUR_AQUAMARINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_BRIGHT_GREEN, // COLOUR_SATURATED_GREEN | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_DARK_GREEN, // COLOUR_DARK_GREEN | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_MOSS_GREEN, // COLOUR_MOSS_GREEN | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_BRIGHT_GREEN, // COLOUR_BRIGHT_GREEN | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_OLIVE_GREEN, // COLOUR_OLIVE_GREEN | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN, // COLOUR_DARK_OLIVE_GREEN | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_YELLOW, // COLOUR_BRIGHT_YELLOW | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_YELLOW, // COLOUR_YELLOW | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_YELLOW, // COLOUR_DARK_YELLOW | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_LIGHT_ORANGE, // COLOUR_LIGHT_ORANGE | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_LIGHT_ORANGE, // COLOUR_DARK_ORANGE | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_LIGHT_BROWN, // COLOUR_LIGHT_BROWN | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_LIGHT_BROWN, // COLOUR_SATURATED_BROWN | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_DARK_BROWN, // COLOUR_DARK_BROWN | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_SALMON_PINK, // COLOUR_SALMON_PINK | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_BORDEAUX_RED, // COLOUR_BORDEAUX_RED | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_BRIGHT_RED, // COLOUR_SATURATED_RED | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_BRIGHT_RED, // COLOUR_BRIGHT_RED | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_BRIGHT_PINK, // COLOUR_DARK_PINK | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_BRIGHT_PINK, // COLOUR_BRIGHT_PINK | COLOUR_FLAG_TRANSLUCENT
PALETTE_TRANSLUCENT_LIGHT_PINK, // COLOUR_LIGHT_PINK | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_BLACK | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_GREY | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_WHITE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_DARK_PURPLE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_LIGHT_PURPLE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_BRIGHT_PURPLE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_DARK_BLUE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_LIGHT_BLUE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_ICY_BLUE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_TEAL | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_AQUAMARINE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_SATURATED_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_DARK_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_MOSS_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_BRIGHT_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_OLIVE_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_DARK_OLIVE_GREEN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_BRIGHT_YELLOW | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_YELLOW | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_DARK_YELLOW | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_LIGHT_ORANGE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_DARK_ORANGE | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_LIGHT_BROWN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_SATURATED_BROWN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_DARK_BROWN | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_SALMON_PINK | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_BORDEAUX_RED | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_SATURATED_RED | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_BRIGHT_RED | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_DARK_PINK | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_BRIGHT_PINK | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_LIGHT_PINK | COLOUR_FLAG_OUTLINE | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_BLACK | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_GREY | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_WHITE | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_DARK_PURPLE | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_LIGHT_PURPLE | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_BRIGHT_PURPLE | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_DARK_BLUE | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_LIGHT_BLUE | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_ICY_BLUE | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_TEAL | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_AQUAMARINE | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_SATURATED_GREEN | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_DARK_GREEN | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_MOSS_GREEN | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_BRIGHT_GREEN | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_OLIVE_GREEN | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_DARK_OLIVE_GREEN | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_BRIGHT_YELLOW | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_YELLOW | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_DARK_YELLOW | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_LIGHT_ORANGE | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_DARK_ORANGE | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_LIGHT_BROWN | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_SATURATED_BROWN | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_DARK_BROWN | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_SALMON_PINK | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_BORDEAUX_RED | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_SATURATED_RED | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_BRIGHT_RED | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_DARK_PINK | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_34, // COLOUR_BRIGHT_PINK | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
PALETTE_WATER, // COLOUR_LIGHT_PINK | COLOUR_FLAG_INSET | COLOUR_FLAG_TRANSLUCENT
const translucent_window_palette TranslucentWindowPalettes[COLOUR_COUNT] = {
WINDOW_PALETTE_GREY, // COLOUR_BLACK
WINDOW_PALETTE_GREY, // COLOUR_GREY
{PALETTE_TRANSLUCENT_WHITE, PALETTE_TRANSLUCENT_WHITE_HIGHLIGHT, PALETTE_TRANSLUCENT_WHITE_SHADOW},
WINDOW_PALETTE_LIGHT_PURPLE, // COLOUR_DARK_PURPLE
WINDOW_PALETTE_LIGHT_PURPLE, // COLOUR_LIGHT_PURPLE
{PALETTE_TRANSLUCENT_BRIGHT_PURPLE, PALETTE_TRANSLUCENT_BRIGHT_PURPLE_HIGHLIGHT, PALETTE_TRANSLUCENT_BRIGHT_PURPLE_SHADOW},
WINDOW_PALETTE_LIGHT_BLUE, // COLOUR_DARK_BLUE
WINDOW_PALETTE_LIGHT_BLUE, // COLOUR_LIGHT_BLUE
WINDOW_PALETTE_LIGHT_BLUE, // COLOUR_ICY_BLUE
WINDOW_PALETTE_TEAL, // COLOUR_TEAL
WINDOW_PALETTE_TEAL, // COLOUR_AQUAMARINE
WINDOW_PALETTE_BRIGHT_GREEN, // COLOUR_SATURATED_GREEN
{PALETTE_TRANSLUCENT_DARK_GREEN, PALETTE_TRANSLUCENT_DARK_GREEN_HIGHLIGHT, PALETTE_TRANSLUCENT_DARK_GREEN_SHADOW},
{PALETTE_TRANSLUCENT_MOSS_GREEN, PALETTE_TRANSLUCENT_MOSS_GREEN_HIGHLIGHT, PALETTE_TRANSLUCENT_MOSS_GREEN_SHADOW},
WINDOW_PALETTE_BRIGHT_GREEN, // COLOUR_BRIGHT_GREEN
{PALETTE_TRANSLUCENT_OLIVE_GREEN, PALETTE_TRANSLUCENT_OLIVE_GREEN_HIGHLIGHT, PALETTE_TRANSLUCENT_OLIVE_GREEN_SHADOW},
{PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN, PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_HIGHLIGHT, PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_SHADOW},
WINDOW_PALETTE_YELLOW, // COLOUR_BRIGHT_YELLOW
WINDOW_PALETTE_YELLOW, // COLOUR_YELLOW
WINDOW_PALETTE_YELLOW, // COLOUR_DARK_YELLOW
WINDOW_PALETTE_LIGHT_ORANGE, // COLOUR_LIGHT_ORANGE
WINDOW_PALETTE_LIGHT_ORANGE, // COLOUR_DARK_ORANGE
WINDOW_PALETTE_LIGHT_BROWN, // COLOUR_LIGHT_BROWN
WINDOW_PALETTE_LIGHT_BROWN, // COLOUR_SATURATED_BROWN
{PALETTE_TRANSLUCENT_DARK_BROWN, PALETTE_TRANSLUCENT_DARK_BROWN_HIGHLIGHT, PALETTE_TRANSLUCENT_DARK_BROWN_SHADOW},
{PALETTE_TRANSLUCENT_SALMON_PINK, PALETTE_TRANSLUCENT_SALMON_PINK_HIGHLIGHT, PALETTE_TRANSLUCENT_SALMON_PINK_SHADOW},
{PALETTE_TRANSLUCENT_BORDEAUX_RED, PALETTE_TRANSLUCENT_BORDEAUX_RED_HIGHLIGHT, PALETTE_TRANSLUCENT_BORDEAUX_RED_SHADOW},
WINDOW_PALETTE_BRIGHT_RED, // COLOUR_SATURATED_RED
WINDOW_PALETTE_BRIGHT_RED, // COLOUR_BRIGHT_RED
WINDOW_PALETTE_BRIGHT_PINK, // COLOUR_DARK_PINK
WINDOW_PALETTE_BRIGHT_PINK, // COLOUR_BRIGHT_PINK
{PALETTE_TRANSLUCENT_LIGHT_PINK, PALETTE_TRANSLUCENT_LIGHT_PINK_HIGHLIGHT, PALETTE_TRANSLUCENT_LIGHT_PINK_SHADOW},
};
void gfx_draw_pixel(rct_drawpixelinfo *dpi, int x, int y, int colour)

View File

@@ -109,29 +109,66 @@ typedef enum {
PALETTE_DARKEN_1 = 49,
PALETTE_DARKEN_2 = 50,
PALETTE_51 = 51, // Decolorize + darken
PALETTE_TRANSLUCENT_GREY = 52,
PALETTE_TRANSLUCENT_GREY_HIGHLIGHT = 53,
PALETTE_TRANSLUCENT_GREY_SHADOW = 54,
PALETTE_TRANSLUCENT_LIGHT_BLUE = 55,
PALETTE_TRANSLUCENT_LIGHT_BLUE_HIGHLIGHT = PALETTE_TRANSLUCENT_LIGHT_BLUE + 1, // used by console
PALETTE_TRANSLUCENT_LIGHT_BLUE_HIGHLIGHT = 56,
PALETTE_TRANSLUCENT_LIGHT_BLUE_SHADOW = 57,
PALETTE_TRANSLUCENT_BORDEAUX_RED = 58,
PALETTE_TRANSLUCENT_BORDEAUX_RED_HIGHLIGHT = 59,
PALETTE_TRANSLUCENT_BORDEAUX_RED_SHADOW = 60,
PALETTE_TRANSLUCENT_DARK_GREEN = 61,
PALETTE_TRANSLUCENT_DARK_GREEN_HIGHLIGHT = 62,
PALETTE_TRANSLUCENT_DARK_GREEN_SHADOW = 63,
PALETTE_TRANSLUCENT_LIGHT_PURPLE = 64,
PALETTE_TRANSLUCENT_LIGHT_PURPLE_HIGHLIGHT = 65,
PALETTE_TRANSLUCENT_LIGHT_PURPLE_SHADOW = 66,
PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN = 67,
PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_HIGHLIGHT = 68,
PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_SHADOW = 69,
PALETTE_TRANSLUCENT_LIGHT_BROWN = 70,
PALETTE_TRANSLUCENT_LIGHT_BROWN_HIGHLIGHT = 71,
PALETTE_TRANSLUCENT_LIGHT_BROWN_SHADOW = 72,
PALETTE_TRANSLUCENT_YELLOW = 73,
PALETTE_TRANSLUCENT_YELLOW_HIGHLIGHT = 74,
PALETTE_TRANSLUCENT_YELLOW_SHADOW = 75,
PALETTE_TRANSLUCENT_MOSS_GREEN = 76,
PALETTE_TRANSLUCENT_MOSS_GREEN_HIGHLIGHT = 77,
PALETTE_TRANSLUCENT_MOSS_GREEN_SHADOW = 78,
PALETTE_TRANSLUCENT_OLIVE_GREEN = 79,
PALETTE_TRANSLUCENT_OLIVE_GREEN_HIGHLIGHT = 80,
PALETTE_TRANSLUCENT_OLIVE_GREEN_SHADOW = 81,
PALETTE_TRANSLUCENT_BRIGHT_GREEN = 82,
PALETTE_TRANSLUCENT_BRIGHT_GREEN_HIGHLIGHT = 83,
PALETTE_TRANSLUCENT_BRIGHT_GREEN_SHADOW = 84,
PALETTE_TRANSLUCENT_SALMON_PINK = 85,
PALETTE_TRANSLUCENT_SALMON_PINK_HIGHLIGHT = 86,
PALETTE_TRANSLUCENT_SALMON_PINK_SHADOW = 87,
PALETTE_TRANSLUCENT_BRIGHT_PURPLE = 88,
PALETTE_TRANSLUCENT_BRIGHT_PURPLE_HIGHLIGHT = 89,
PALETTE_TRANSLUCENT_BRIGHT_PURPLE_SHADOW = 90,
PALETTE_TRANSLUCENT_BRIGHT_RED = 91,
PALETTE_TRANSLUCENT_BRIGHT_RED_HIGHLIGHT = 92,
PALETTE_TRANSLUCENT_BRIGHT_RED_SHADOW = 93,
PALETTE_TRANSLUCENT_LIGHT_ORANGE = 94,
PALETTE_TRANSLUCENT_LIGHT_ORANGE_HIGHLIGHT = 95,
PALETTE_TRANSLUCENT_LIGHT_ORANGE_SHADOW = 96,
PALETTE_TRANSLUCENT_TEAL = 97,
PALETTE_TRANSLUCENT_TEAL_HIGHLIGHT = 98,
PALETTE_TRANSLUCENT_TEAL_SHADOW = 99,
PALETTE_TRANSLUCENT_BRIGHT_PINK = 100,
PALETTE_TRANSLUCENT_BRIGHT_PINK_HIGHLIGHT = 101,
PALETTE_TRANSLUCENT_BRIGHT_PINK_SHADOW = 102,
PALETTE_TRANSLUCENT_DARK_BROWN = 103,
PALETTE_TRANSLUCENT_DARK_BROWN_HIGHLIGHT = 104,
PALETTE_TRANSLUCENT_DARK_BROWN_SHADOW = 105,
PALETTE_TRANSLUCENT_LIGHT_PINK = 106,
PALETTE_TRANSLUCENT_LIGHT_PINK_HIGHLIGHT = 107,
PALETTE_TRANSLUCENT_LIGHT_PINK_SHADOW = 108,
PALETTE_TRANSLUCENT_WHITE = 109,
PALETTE_TRANSLUCENT_WHITE_HIGHLIGHT = 110,
PALETTE_TRANSLUCENT_WHITE_SHADOW = 111,
PALETTE_GLASS_BLACK = 112 + COLOUR_BLACK,
PALETTE_GLASS_GREY = 112 + COLOUR_GREY,
PALETTE_GLASS_WHITE = 112 + COLOUR_WHITE,
@@ -166,6 +203,12 @@ typedef enum {
PALETTE_GLASS_LIGHT_PINK = 112 + COLOUR_LIGHT_PINK,
} FILTER_PALETTE_ID;
typedef struct translucent_window_palette {
FILTER_PALETTE_ID base;
FILTER_PALETTE_ID highlight;
FILTER_PALETTE_ID shadow;
} translucent_window_palette;
typedef struct rct_g1_header {
uint32 num_entries;
uint32 total_size;
@@ -217,7 +260,7 @@ extern const uint16 palette_to_g1_offset[];
extern uint8 gPeepPalette[256];
extern uint8 gOtherPalette[256];
extern uint8 text_palette[];
extern const FILTER_PALETTE_ID _9DEDF4[];
extern const translucent_window_palette TranslucentWindowPalettes[COLOUR_COUNT];
extern int gLastDrawStringX;
extern int gLastDrawStringY;

View File

@@ -36,35 +36,36 @@ void gfx_fill_rect_inset(rct_drawpixelinfo* dpi, short left, short top, short ri
uint8 shadow, fill, hilight;
if (colour & (COLOUR_FLAG_TRANSLUCENT | COLOUR_FLAG_8)) {
FILTER_PALETTE_ID palette;
translucent_window_palette palette;
if (colour & COLOUR_FLAG_8) {
// TODO: This can't be added up
palette = NOT_TRANSLUCENT(colour);
// palette = NOT_TRANSLUCENT(colour);
assert(false);
} else {
palette = _9DEDF4[colour];
palette = TranslucentWindowPalettes[BASE_COLOUR(colour)];
}
if (flags & INSET_RECT_FLAG_BORDER_NONE) {
gfx_filter_rect(dpi, left, top, right, bottom, palette);
gfx_filter_rect(dpi, left, top, right, bottom, palette.base);
} else if (flags & INSET_RECT_FLAG_BORDER_INSET) {
// Draw outline of box
gfx_filter_rect(dpi, left, top, left, bottom, palette + 1);
gfx_filter_rect(dpi, left, top, right, top, palette + 1);
gfx_filter_rect(dpi, right, top, right, bottom, palette + 2);
gfx_filter_rect(dpi, left, bottom, right, bottom, palette + 2);
gfx_filter_rect(dpi, left, top, left, bottom, palette.highlight);
gfx_filter_rect(dpi, left, top, right, top, palette.highlight);
gfx_filter_rect(dpi, right, top, right, bottom, palette.shadow);
gfx_filter_rect(dpi, left, bottom, right, bottom, palette.shadow);
if (!(flags & INSET_RECT_FLAG_FILL_NONE)) {
gfx_filter_rect(dpi, left+1, top+1, right-1, bottom-1, palette);
gfx_filter_rect(dpi, left+1, top+1, right-1, bottom-1, palette.base);
}
} else {
// Draw outline of box
gfx_filter_rect(dpi, left, top, left, bottom, palette + 2);
gfx_filter_rect(dpi, left, top, right, top, palette + 2);
gfx_filter_rect(dpi, right, top, right, bottom, palette + 1);
gfx_filter_rect(dpi, left, bottom, right, bottom, palette + 1);
gfx_filter_rect(dpi, left, top, left, bottom, palette.shadow);
gfx_filter_rect(dpi, left, top, right, top, palette.shadow);
gfx_filter_rect(dpi, right, top, right, bottom, palette.highlight);
gfx_filter_rect(dpi, left, bottom, right, bottom, palette.highlight);
if (!(flags & INSET_RECT_FLAG_FILL_NONE)) {
gfx_filter_rect(dpi, left+1, top+1, right-1, bottom-1, palette);
gfx_filter_rect(dpi, left+1, top+1, right-1, bottom-1, palette.base);
}
}
} else {

View File

@@ -73,6 +73,7 @@ enum {
#define COLOUR_FLAG_8 (1 << 8)
#define TRANSLUCENT(x) ((x) | COLOUR_FLAG_TRANSLUCENT)
#define NOT_TRANSLUCENT(x) ((x) & ~COLOUR_FLAG_TRANSLUCENT)
#define BASE_COLOUR(x) ((x) & 0x1F)
#define NUM_COLOURS 32

View File

@@ -297,8 +297,9 @@ static void window_dropdown_paint(rct_window *w, rct_drawpixelinfo *dpi)
b = t;
if (w->colours[0] & COLOUR_FLAG_TRANSLUCENT) {
gfx_filter_rect(dpi, l, t, r, b, _9DEDF4[w->colours[0]] + 1);
gfx_filter_rect(dpi, l, t + 1, r, b + 1, _9DEDF4[w->colours[0]] + 2);
translucent_window_palette palette = TranslucentWindowPalettes[BASE_COLOUR(w->colours[0])];
gfx_filter_rect(dpi, l, t, r, b, palette.highlight);
gfx_filter_rect(dpi, l, t + 1, r, b + 1, palette.shadow);
} else {
gfx_fill_rect(dpi, l, t, r, b, ColourMapA[w->colours[0]].mid_dark);
gfx_fill_rect(dpi, l, t + 1, r, b + 1, ColourMapA[w->colours[0]].lightest);

View File

@@ -810,10 +810,10 @@ void window_themes_scrollpaint(rct_window *w, rct_drawpixelinfo *dpi, int scroll
if (i + 1 < get_colour_scheme_tab_count()) {
int colour = w->colours[1];
if (colour & COLOUR_FLAG_TRANSLUCENT) {
FILTER_PALETTE_ID palette = _9DEDF4[colour];
translucent_window_palette windowPalette = TranslucentWindowPalettes[BASE_COLOUR(colour)];
gfx_filter_rect(dpi, 0, y + _row_height - 2, window_themes_widgets[WIDX_THEMES_LIST].right, y + _row_height - 2, palette + 1);
gfx_filter_rect(dpi, 0, y + _row_height - 1, window_themes_widgets[WIDX_THEMES_LIST].right, y + _row_height - 1, palette + 2);
gfx_filter_rect(dpi, 0, y + _row_height - 2, window_themes_widgets[WIDX_THEMES_LIST].right, y + _row_height - 2, windowPalette.highlight);
gfx_filter_rect(dpi, 0, y + _row_height - 1, window_themes_widgets[WIDX_THEMES_LIST].right, y + _row_height - 1, windowPalette.shadow);
}
else {
colour = ColourMapA[w->colours[1]].mid_dark;