]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Allow coloring of the strafehud preaccel zone
authorotta8634 <k9wolf@pm.me>
Sun, 1 Sep 2024 06:33:48 +0000 (14:33 +0800)
committerotta8634 <k9wolf@pm.me>
Sun, 1 Sep 2024 06:33:48 +0000 (14:33 +0800)
Previously there was a cvar to enable it, but it would be the color of the accel zone
Having different colors is particularly useful for circlejumping

_hud_common.cfg
qcsrc/client/hud/panel/strafehud.qc
qcsrc/client/hud/panel/strafehud.qh

index f8936dfbf691467eb8a5281a7d4ec31ff8ebe09b..614b8cde0e72e197c41273a4025a9fe5c80bdba1 100644 (file)
@@ -172,6 +172,8 @@ seta hud_panel_strafehud_style "2" "\"0\" = no styling, \"1\" = progress bar sty
 seta hud_panel_strafehud_unit_show "1" "show units"
 seta hud_panel_strafehud_uncapped "0" "set to \"1\" to remove some safety restrictions, useful to set thinner indicator lines down to 1px or for trying out higher values for some performance degrading operations (warning: elements may turn invisible if too thin, other configurations may crash your game or look horribly ugly)"
 seta hud_panel_strafehud_bar_preaccel "1" "set to \"1\" to extend the acceleration zone by the strafe meter zone before full acceleration can be achieved"
+seta hud_panel_strafehud_bar_preaccel_color "0 1 0" "color of the strafe meter pre-acceleration zone"
+seta hud_panel_strafehud_bar_preaccel_alpha "0.5" "opacity of the strafe meter pre-acceleration zone"
 seta hud_panel_strafehud_bar_neutral_color "1 1 1" "color of the strafe meter neutral zone"
 seta hud_panel_strafehud_bar_neutral_alpha "0.1" "opacity of the strafe meter neutral zone"
 seta hud_panel_strafehud_bar_accel_color "0 1 0" "color of the strafe meter acceleration zone"
@@ -183,6 +185,7 @@ seta hud_panel_strafehud_angle_dashes "4" "determines the amount of dashes if th
 seta hud_panel_strafehud_angle_alpha "0.8" "opacity of the indicator showing the player's current angle"
 seta hud_panel_strafehud_angle_height "1" "height of the indicator showing the player's current angle (relative to the panel height)"
 seta hud_panel_strafehud_angle_width "0.001" "width of the indicator showing the player's current angle (relative to the panel width)"
+seta hud_panel_strafehud_angle_preaccel_color "0 1 1" "color of the indicator showing the player's current angle if it is within the acceleration zone"
 seta hud_panel_strafehud_angle_neutral_color "1 1 0" "color of the indicator showing the player's current angle if it is within the neutral zone"
 seta hud_panel_strafehud_angle_accel_color "0 1 1" "color of the indicator showing the player's current angle if it is within the acceleration zone"
 seta hud_panel_strafehud_angle_overturn_color "1 0 1" "color of the indicator showing the player's current angle if it is within the overturn zone"
index 802257c9a9820e2e9dac8ff64a5b590780f8e87c..3c428dde4800f9e3fa7476153433bf8b7c2a17cb 100644 (file)
@@ -756,8 +756,8 @@ void HUD_StrafeHUD()
                        if(autocvar_hud_panel_strafehud_bar_preaccel)
                                HUD_Panel_DrawStrafeHUD(
                                        preaccelzone_left_offset, preaccelzone_width, hidden_width,
-                                       autocvar_hud_panel_strafehud_bar_accel_color,
-                                       autocvar_hud_panel_strafehud_bar_accel_alpha * panel_fg_alpha,
+                                       autocvar_hud_panel_strafehud_bar_preaccel_color,
+                                       autocvar_hud_panel_strafehud_bar_preaccel_alpha * panel_fg_alpha,
                                        autocvar_hud_panel_strafehud_style, STRAFEHUD_GRADIENT_RIGHT, false);
 
                        // draw right acceleration zone
@@ -770,8 +770,8 @@ void HUD_StrafeHUD()
                        if(autocvar_hud_panel_strafehud_bar_preaccel)
                                HUD_Panel_DrawStrafeHUD(
                                        preaccelzone_right_offset, preaccelzone_width, hidden_width,
-                                       autocvar_hud_panel_strafehud_bar_accel_color,
-                                       autocvar_hud_panel_strafehud_bar_accel_alpha * panel_fg_alpha,
+                                       autocvar_hud_panel_strafehud_bar_preaccel_color,
+                                       autocvar_hud_panel_strafehud_bar_preaccel_alpha * panel_fg_alpha,
                                        autocvar_hud_panel_strafehud_style, STRAFEHUD_GRADIENT_LEFT, false);
 
                        // draw overturn zone
@@ -971,7 +971,7 @@ void HUD_StrafeHUD()
                        else if(moveangle >= real_prebestangle)
                        {
                                if(autocvar_hud_panel_strafehud_bar_preaccel)
-                                       currentangle_color = autocvar_hud_panel_strafehud_angle_accel_color;
+                                       currentangle_color = autocvar_hud_panel_strafehud_angle_preaccel_color;
                                strafe_ratio = (moveangle - real_prebestangle) / (real_bestangle - real_prebestangle);
                        }
 
index 3e3fad5b3fcc61571dab9bc545b618426d2e519d..dded346ec96d927b271b5832c6bd2bacbe0f5967 100644 (file)
@@ -10,6 +10,8 @@ int autocvar_hud_panel_strafehud_style = 2;
 bool autocvar_hud_panel_strafehud_unit_show = true;
 bool autocvar_hud_panel_strafehud_uncapped = false;
 bool autocvar_hud_panel_strafehud_bar_preaccel = true;
+vector autocvar_hud_panel_strafehud_bar_preaccel_color = '0 1 0';
+float autocvar_hud_panel_strafehud_bar_preaccel_alpha = 0.5;
 vector autocvar_hud_panel_strafehud_bar_neutral_color = '1 1 1';
 float autocvar_hud_panel_strafehud_bar_neutral_alpha = 0.1;
 vector autocvar_hud_panel_strafehud_bar_accel_color = '0 1 0';
@@ -21,6 +23,7 @@ int autocvar_hud_panel_strafehud_angle_dashes = 4;
 float autocvar_hud_panel_strafehud_angle_alpha = 0.8;
 float autocvar_hud_panel_strafehud_angle_height = 1;
 float autocvar_hud_panel_strafehud_angle_width = 0.001;
+vector autocvar_hud_panel_strafehud_angle_preaccel_color = '0 1 1';
 vector autocvar_hud_panel_strafehud_angle_neutral_color = '1 1 0';
 vector autocvar_hud_panel_strafehud_angle_accel_color = '0 1 1';
 vector autocvar_hud_panel_strafehud_angle_overturn_color = '1 0 1';