float log(float f);
+vector centerprint_start;
+
float panel_order[HUD_PANEL_NUM];
string hud_panelorder_prev;
#define MAX_ACCURACY_LEVELS 10
float acc_lev[MAX_ACCURACY_LEVELS];
float acc_levels;
+string acc_color_levels;
float complain_weapon;
string complain_weapon_name;
float last_weapon;
float weapontime;
+float weaponprevtime;
float teamnagger;
-float hud_accuracy_hud;
-float hud_border_thickness;
-float hud_accuracy_border_thickness;
float hud_configure_checkcollisions;
float hud_configure_prev;
const float S_CTRL = 2;
const float S_ALT = 4;
-float disable_menu_alphacheck; // 0 = enable alpha check, 1 = disable for entire hud, 2 = disable for one panel
-float menu_fade_alpha;
+float menu_enabled; // 1 showing the entire HUD, 2 showing only the clicked panel
+float menu_enabled_time;
+
+float hud_fade_alpha;
string hud_skin_path;
var vector progressbar_color;
+var float highlightedPanel_backup = -1;
+var vector panel_pos_backup;
+var vector panel_size_backup;
+
+var float highlightedPanel_copied = -1; //this is good only to know if there is something copied
+var vector panel_size_copied;
+
var float active_panel; // this panel has recently referred the UpdateCvars macro
var string panel_name;
var float panel_enabled;
// ----------------------
// MACRO HELL STARTS HERE
// ----------------------
-// Little help for the poor people who have to make sense of this: Start from the bottom
+// Little help for the poor people who have to make sense of this: Start from the bottom ;)
#define HUD_Panel_GetProgressBarColor(item) \
switch(item) {\
panel_bg = "0";\
} else {\
if(panel_bg_str == "") {\
- panel_bg = autocvar_hud_panel_bg;\
- } else if(panel_bg_str == "0" && autocvar__hud_configure) {\
- panel_bg = autocvar_hud_panel_bg;\
- panel_bg_alpha_str = "0";\
- } else {\
- panel_bg = panel_bg_str;\
+ panel_bg_str = autocvar_hud_panel_bg;\
}\
- panel_bg = strcat(hud_skin_path, "/", panel_bg);\
- if(precache_pic(panel_bg) == "") {\
- panel_bg = strcat(hud_skin_path, "/", "border");\
+ if(panel_bg_str == "0" && !autocvar__hud_configure) {\
+ panel_bg = "0";\
+ } else {\
+ if (panel_bg_str == "0" && autocvar__hud_configure)\
+ panel_bg_alpha_str = "0";\
+ panel_bg = strcat(hud_skin_path, "/", panel_bg_str);\
if(precache_pic(panel_bg) == "") {\
- panel_bg = strcat("gfx/hud/default/", "border");\
+ panel_bg = strcat(hud_skin_path, "/", "border_default");\
+ if(precache_pic(panel_bg) == "") {\
+ panel_bg = strcat("gfx/hud/default/", "border_default");\
+ }\
}\
}\
}
panel_bg_alpha_str = ftos(autocvar_hud_panel_bg_alpha);\
}\
panel_bg_alpha = stof(panel_bg_alpha_str);\
-if(autocvar__hud_configure && disable_menu_alphacheck == 2 && highlightedPanel == active_panel) {\
+if(autocvar__hud_configure && menu_enabled == 2 && highlightedPanel == active_panel) {\
panel_bg_alpha = (1 - autocvar__menu_alpha) * max(autocvar_hud_configure_bg_minalpha, panel_bg_alpha) + autocvar__menu_alpha * panel_bg_alpha;\
} else if(autocvar__hud_configure) {\
panel_bg_alpha = max(autocvar_hud_configure_bg_minalpha, panel_bg_alpha);\
} if(autocvar__hud_configure && !panel_enabled) {\
panel_bg_alpha = 0.25;\
-} if(!(disable_menu_alphacheck == 2 && highlightedPanel == active_panel)) {\
- panel_bg_alpha *= menu_fade_alpha;\
+} if(!(menu_enabled == 2 && highlightedPanel == active_panel)) {\
+ panel_bg_alpha *= hud_fade_alpha;\
}
// Get value for panel_fg_alpha. Also do various minalpha checks
panel_fg_alpha = autocvar_hud_panel_fg_alpha;\
if(autocvar__hud_configure && !panel_enabled)\
panel_fg_alpha = 0.25;\
-if(!(disable_menu_alphacheck == 2 && highlightedPanel == active_panel))\
- panel_fg_alpha *= menu_fade_alpha;
+if(!(menu_enabled == 2 && highlightedPanel == active_panel))\
+ panel_fg_alpha *= hud_fade_alpha;
// Get border. See comments above, it's similar.
#define HUD_Panel_GetBorder()\
panel_bg_border_str = autocvar_hud_panel_##name##_bg_border; \
panel_bg_padding_str = autocvar_hud_panel_##name##_bg_padding; \
HUD_Panel_StringVars()\
-if(disable_menu_alphacheck == 2 && active_panel == highlightedPanel) {\
+if(menu_enabled == 2 && active_panel == highlightedPanel) {\
HUD_Panel_GetMenuSize()\
HUD_Panel_GetMenuPos()\
}
panel_pos = autocvar_hud_panel_##name##_pos; \
panel_size = autocvar_hud_panel_##name##_size; \
HUD_Panel_GetScaledVectors()\
-if(disable_menu_alphacheck == 2 && active_panel == highlightedPanel) {\
+if(menu_enabled == 2 && active_panel == highlightedPanel) {\
HUD_Panel_GetMenuSize()\
HUD_Panel_GetMenuPos()\
}\