6 return pow((x + 0.055) / 1.055, 2.4)
9 def __init__(self, name, r, g, b, a=1.0):
11 self.
r = gammaToLinear( r )
12 self.
g = gammaToLinear( g )
13 self.
b = gammaToLinear( b )
16 def write_header(self, f):
17 f.write(f
"extern const glColour c{self.name};\n")
19 def write_source(self, f):
20 f.write(f
"const glColour c{self.name} = {{ .r={self.r}, .g={self.g}, .b={self.b}, .a={self.a} }};\n")
24 Colour(
"White", 1.00, 1.00, 1.00 ),
25 Colour(
"Grey90", 0.90, 0.90, 0.90 ),
26 Colour(
"Grey80", 0.80, 0.80, 0.80 ),
27 Colour(
"Grey70", 0.70, 0.70, 0.70 ),
28 Colour(
"Grey60", 0.60, 0.60, 0.60 ),
29 Colour(
"Grey50", 0.50, 0.50, 0.50 ),
30 Colour(
"Grey45", 0.45, 0.45, 0.45 ),
31 Colour(
"Grey40", 0.40, 0.40, 0.40 ),
32 Colour(
"Grey35", 0.35, 0.35, 0.35 ),
33 Colour(
"Grey30", 0.30, 0.30, 0.30 ),
34 Colour(
"Grey25", 0.25, 0.25, 0.25 ),
35 Colour(
"Grey20", 0.20, 0.20, 0.20 ),
36 Colour(
"Grey15", 0.15, 0.15, 0.15 ),
37 Colour(
"Grey10", 0.10, 0.10, 0.10 ),
38 Colour(
"Grey5", 0.05, 0.05, 0.05 ),
39 Colour(
"Black", 0.00, 0.00, 0.00 ),
42 Colour(
"DarkGreen", 0.10, 0.50, 0.10 ),
43 Colour(
"Green", 0.20, 0.80, 0.20 ),
44 Colour(
"PrimeGreen", 0.00, 1.00, 0.00 ),
46 Colour(
"DarkRed", 0.60, 0.10, 0.10 ),
47 Colour(
"Red", 0.80, 0.20, 0.20 ),
48 Colour(
"PrimeRed", 1.00, 0.00, 0.00 ),
49 Colour(
"BrightRed", 1.00, 0.60, 0.60 ),
51 Colour(
"Orange", 0.90, 0.70, 0.10 ),
53 Colour(
"Gold", 1.00, 0.84, 0.00 ),
54 Colour(
"Yellow", 0.80, 0.80, 0.00 ),
56 Colour(
"MidnightBlue", 0.10, 0.10, 0.4 ),
57 Colour(
"DarkBlue", 0.10, 0.10, 0.60 ),
58 Colour(
"Blue", 0.20, 0.20, 0.80 ),
59 Colour(
"AquaBlue", 0.30, 0.30, 0.90 ),
60 Colour(
"LightBlue", 0.40, 0.40, 1.00 ),
61 Colour(
"PrimeBlue", 0.00, 0.00, 1.00 ),
62 Colour(
"Cyan", 0.00, 1.00, 1.00 ),
64 Colour(
"Purple", 0.90, 0.10, 0.90 ),
65 Colour(
"DarkPurple", 0.68, 0.18, 0.64 ),
67 Colour(
"Brown", 0.59, 0.28, 0.00 ),
69 Colour(
"Silver", 0.75, 0.75, 0.75 ),
70 Colour(
"Aqua", 0.00, 0.75, 1.00 ),
72 Colour(
"BlackHilight", 0.0, 0.0, 0.0, 0.4 ),
76 Colour(
"OutfitHeavy", 0.8, 0.4, 0.46 ),
77 Colour(
"OutfitMedium", 0.16, 0.63, 0.81 ),
79 Colour(
"OutfitLight", 0.75, 0.7, 0.40 ),
81 Colour(
"Inert", 221./255., 221./255., 221./255. ),
82 Colour(
"Neutral", 221./255., 204./255., 119./255. ),
83 Colour(
"Friend", 68./255., 170./255., 153./255. ),
84 Colour(
"Hostile", 204./255., 68./255., 153./255. ),
85 Colour(
"Restricted", 221./255., 153./255., 51./255. ),
88 Colour(
"MarkerNew", 0x33/255., 0xBB/255., 0xEE/255. ),
89 Colour(
"MarkerComputer", 0x33/255., 0xBB/255., 0xEE/255. ),
90 Colour(
"MarkerLow", 0x00/255., 0x99/255., 0x88/255. ),
91 Colour(
"MarkerHigh", 0xEE/255., 0x77/255., 0x33/255. ),
92 Colour(
"MarkerPlot", 0xEE/255., 0x33/255., 0x77/255. ),
94 Colour(
"Radar_player", 0.9, 0.1, 0.9 ),
95 Colour(
"Radar_tPilot", 1.0, 1.0, 1.0 ),
96 Colour(
"Radar_tSpob", 1.0, 1.0, 1.0 ),
97 Colour(
"Radar_weap", 0.8, 0.2, 0.2 ),
98 Colour(
"Radar_hilight", 0.6, 1.0, 1.0 ),
100 Colour(
"Shield", 0.2, 0.2, 0.8 ),
101 Colour(
"Armour", 0.5, 0.5, 0.5 ),
102 Colour(
"Energy", 0.2, 0.8, 0.2 ),
103 Colour(
"Fuel", 0.9, 0.1, 0.4 ),
106 Colour(
"FontRed", 1.0, 0.4, 0.4 ),
107 Colour(
"FontGreen", 0.6, 1.0, 0.4 ),
108 Colour(
"FontBlue", 0.4, 0.6, 1.0 ),
109 Colour(
"FontYellow", 1.0, 1.0, 0.5 ),
110 Colour(
"FontGrey", 0.7, 0.7, 0.7 ),
111 Colour(
"FontPurple", 1.0, 0.3, 1.0 ),
112 Colour(
"FontOrange", 1.0, 0.7, 0.3 ),
113 Colour(
"FontWhite", 0.95, 0.95, 0.95 ),
117 f.write(f
"/* FILE GENERATED BY {__file__} */")
119def generate_h_file(f):
127 col.write_header( f )
129const glColour* col_fromName( const char* name );
132def generate_c_file(f):
142 col.write_source( f )
147const glColour* col_fromName( const char* name )
151 f.write(f
" if (strcasecmp(name,\"{col.name}\")==0) return &c{col.name};\n")
153 WARN(_("Unknown colour '%s'!"),name);
157with open("colours.gen.h", "w") as colours_ggen_h:
158 generate_h_file(colours_ggen_h)
160with open(
"colours.gen.c",
"w")
as colours_ggen_c:
161 generate_c_file(colours_ggen_c)