Add and use a second red-to-green color scale for font
(darker, adjusted to the not-fully-white color of normal wesnoth font)
This commit is contained in:
parent
d1206ab4bc
commit
5b8432792c
3 changed files with 24 additions and 12 deletions
|
@ -83,7 +83,8 @@
|
|||
flag_image="flags/flag-1.png:150,flags/flag-2.png:150,flags/flag-3.png:150,flags/flag-4.png:150"
|
||||
flag_icon_image="flags/flag-icon.png"
|
||||
flag_rgb=flag_green
|
||||
red_to_green_scale="ff0500,ff3700,ff6900,ff9b00,ffcd00,ffff00,cdff00,9bff00,69ff00,37ff00,05ff00"
|
||||
red_green_scale="ff0500,ff3700,ff6900,ff9b00,ffcd00,ffff00,cdff00,9bff00,69ff00,37ff00,05ff00"
|
||||
red_green_scale_text="dd0000,dd2c00,dd5800,dd8400,ddb000,dddd00,b0dd00,84dd00,58dd00,2cdd00,00dd00"
|
||||
|
||||
cross_image="misc/cross.png"
|
||||
|
||||
|
|
|
@ -73,7 +73,8 @@ namespace game_config
|
|||
std::string flag_image = "flags/flag-1.png:150,flags/flag-2.png:150,flags/flag-3.png:150,flags/flag-4.png:150";
|
||||
std::string flag_icon_image = "flags/flag_icon.png";
|
||||
std::string flag_rgb = "flag_green";
|
||||
std::vector<Uint32> red_to_green_scale;
|
||||
std::vector<Uint32> red_green_scale;
|
||||
std::vector<Uint32> red_green_scale_text;
|
||||
|
||||
double hp_bar_scaling = 0.666;
|
||||
double xp_bar_scaling = 0.5;
|
||||
|
@ -212,9 +213,14 @@ namespace game_config
|
|||
if( !flag_rgb.size()){
|
||||
flag_rgb="flag_green";
|
||||
}
|
||||
red_to_green_scale = string2rgb(v["red_to_green_scale"]);
|
||||
if (red_to_green_scale.empty()) {
|
||||
red_to_green_scale.push_back(0x00FFFF00);
|
||||
|
||||
red_green_scale = string2rgb(v["red_green_scale"]);
|
||||
if (red_green_scale.empty()) {
|
||||
red_green_scale.push_back(0x00FFFF00);
|
||||
}
|
||||
red_green_scale_text = string2rgb(v["red_green_scale_text"]);
|
||||
if (red_green_scale_text.empty()) {
|
||||
red_green_scale_text.push_back(0x00FFFF00);
|
||||
}
|
||||
|
||||
server_list.clear();
|
||||
|
@ -305,10 +311,12 @@ namespace game_config
|
|||
return i->second;
|
||||
}
|
||||
|
||||
Uint32 red_to_green(int val){
|
||||
Uint32 red_to_green(int val, bool for_text){
|
||||
const std::vector<Uint32>& color_scale =
|
||||
for_text ? red_green_scale_text : red_green_scale;
|
||||
val = std::max<int>(0, std::min<int>(val, 100));
|
||||
int lvl = (red_to_green_scale.size()-1) * val / 100;
|
||||
return red_to_green_scale[lvl];
|
||||
int lvl = (color_scale.size()-1) * val / 100;
|
||||
return color_scale[lvl];
|
||||
}
|
||||
|
||||
} // game_config
|
||||
|
|
|
@ -77,7 +77,8 @@ namespace game_config
|
|||
extern double hp_bar_scaling, xp_bar_scaling;
|
||||
|
||||
extern std::string flag_rgb;
|
||||
extern std::vector<Uint32> red_to_green_scale;
|
||||
extern std::vector<Uint32> red_green_scale;
|
||||
extern std::vector<Uint32> red_green_scale_text;
|
||||
|
||||
extern std::vector<std::string> foot_speed_prefix;
|
||||
extern std::string foot_teleport_enter, foot_teleport_exit;
|
||||
|
@ -115,9 +116,11 @@ namespace game_config
|
|||
/**
|
||||
* Return a color corresponding to the value val
|
||||
* red for val=0 to green for val=100, passing by yellow.
|
||||
* Colors are defined in red_to_green_scale from [game_config]
|
||||
*/
|
||||
Uint32 red_to_green(int val);
|
||||
* Colors are defined by [game_config] keys
|
||||
* red_green_scale and red_green_scale_text
|
||||
*/
|
||||
|
||||
Uint32 red_to_green(int val, bool for_text = true);
|
||||
|
||||
extern const version_info wesnoth_version;
|
||||
extern const version_info min_savegame_version;
|
||||
|
|
Loading…
Add table
Reference in a new issue