From: terencehill Date: Fri, 15 Oct 2010 22:05:53 +0000 (+0200) Subject: Let's use menu_enabled 2 when showing a specific panel dialog so that disable_alpha_c... X-Git-Tag: xonotic-v0.1.0preview~267^2~7 X-Git-Url: https://de.git.xonotic.org/?a=commitdiff_plain;h=b8b226100ce9ef65095e81b6655251d093bd9bc6;hp=277c4c7ee176f32713b1a254a595350e2131a83c;p=xonotic%2Fxonotic-data.pk3dir.git Let's use menu_enabled 2 when showing a specific panel dialog so that disable_alpha_check can be removed because is redundant and the code is a bit easier to understand. --- diff --git a/qcsrc/client/hud.qc b/qcsrc/client/hud.qc index 1a225de90..71bbe7f4c 100644 --- a/qcsrc/client/hud.qc +++ b/qcsrc/client/hud.qc @@ -901,8 +901,6 @@ float prevMouseClicked; // previous state float prevMouseClickedTime; // time during previous mouse click, to check for doubleclicks vector prevMouseClickedPos; // pos during previous mouse click, to check for doubleclicks -float menu_enabled; -float menu_enabled_time; float pressed_key_time; void HUD_Panel_Arrow_Action(float nPrimary) { @@ -1058,7 +1056,6 @@ float HUD_Panel_InputEvent(float bInputType, float nPrimary, float nSecondary) { if (bInputType == 1) return true; - disable_menu_alphacheck = 1; menu_enabled = 1; menu_enabled_time = time; localcmd("menu_showhudexit\n"); @@ -1321,13 +1318,11 @@ vector prev_pos, prev_size; void HUD_Panel_Mouse() { // TODO: needs better check... is there any float that contains the current state of the menu? _menu_alpha isn't apparently updated the frame the menu gets enabled - if (menu_enabled == 0) // menu dialog closed, enable normal alpha stuff again - disable_menu_alphacheck = 0; if (autocvar__menu_alpha == 0 && time - menu_enabled_time > 0.5) menu_enabled = 0; /* - print("Disable menu_alphacheck: ", ftos(disable_menu_alphacheck), "\n"); + print("menu_enabled: ", ftos(menu_enabled), "\n"); print("Highlighted: ", ftos(highlightedPanel), "\n"); print("Menu alpha: ", cvar_string("_menu_alpha"), "\n"); */ @@ -1338,7 +1333,7 @@ void HUD_Panel_Mouse() if(menu_enabled) return; - if(mouseClicked == 0 && disable_menu_alphacheck != 2 && highlightedPanel >= 0) { // don't reset these variables in disable_menu_alphacheck mode 2! + if(mouseClicked == 0 && menu_enabled != 2 && highlightedPanel >= 0) { // don't reset these variables in menu_enabled mode 2! highlightedPanel = -1; highlightedAction = 0; } @@ -1401,8 +1396,7 @@ void HUD_Panel_Mouse() if(time - prevMouseClickedTime < 0.4 && prevMouseClicked == 0 && prevMouseClickedPos == mousepos && highlightedPanel >= 0) { mouseClicked = 0; // to prevent spam, I guess. - disable_menu_alphacheck = 2; - menu_enabled = 1; + menu_enabled = 2; menu_enabled_time = time; HUD_Panel_GetName(highlightedPanel) localcmd("menu_showhudoptions ", panel_name, "\n"); @@ -4908,7 +4902,7 @@ void HUD_Main (void) hud_skin_path = strcat("gfx/hud/", autocvar_hud_skin); // global hud alpha fade - if(disable_menu_alphacheck == 1) + if(menu_enabled == 1) hud_fade_alpha = 1; else hud_fade_alpha = (1 - autocvar__menu_alpha); @@ -5010,5 +5004,6 @@ void HUD_Main (void) hud_configure_prev = autocvar__hud_configure; if (!autocvar__hud_configure) // hud config mode disabled, enable normal alpha stuff again - disable_menu_alphacheck = 0; + if (menu_enabled) + menu_enabled = 0; } diff --git a/qcsrc/client/hud.qh b/qcsrc/client/hud.qh index 1754dcb58..9e41d0b25 100644 --- a/qcsrc/client/hud.qh +++ b/qcsrc/client/hud.qh @@ -48,7 +48,9 @@ const float S_SHIFT = 1; 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_enabled; // 1 showing the entire HUD, 2 showing only the clicked panel +float menu_enabled_time; + float hud_fade_alpha; string hud_skin_path; @@ -166,13 +168,13 @@ if(panel_bg_alpha_str == "") {\ 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)) {\ +} if(!(menu_enabled == 2 && highlightedPanel == active_panel)) {\ panel_bg_alpha *= hud_fade_alpha;\ } @@ -183,7 +185,7 @@ if(autocvar__hud_configure && disable_menu_alphacheck == 2 && highlightedPanel = 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))\ +if(!(menu_enabled == 2 && highlightedPanel == active_panel))\ panel_fg_alpha *= hud_fade_alpha; // Get border. See comments above, it's similar. @@ -268,7 +270,7 @@ panel_bg_alpha_str = autocvar_hud_panel_##name##_bg_alpha; \ 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()\ } @@ -297,7 +299,7 @@ switch(id) { \ 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()\ }\