]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
strafehud: fix console spam when playing with high accel
authorJuhu <5894800-Juhu_@users.noreply.gitlab.com>
Tue, 7 Sep 2021 18:16:39 +0000 (20:16 +0200)
committerJuhu <5894800-Juhu_@users.noreply.gitlab.com>
Tue, 7 Sep 2021 18:17:07 +0000 (20:17 +0200)
qcsrc/client/hud/panel/strafehud.qc

index ba1acb5e7c641be1f7ee474976bd075a97e3d5dd..b281d3ed4a554c84f4704503c28d706274ef8521 100644 (file)
@@ -475,8 +475,8 @@ void HUD_StrafeHUD()
         }
 
         // best angle to strafe at
-        bestangle = (speed > (movespeed - maxaccel) ? acos((movespeed - maxaccel) / speed) : 0) * RAD2DEG * (direction < 0 ? -1 : 1);
-        prebestangle = (speed > movespeed ? acos(movespeed / speed) : 0) * RAD2DEG * (direction < 0 ? -1 : 1);
+        bestangle = (speed > fabs(movespeed - maxaccel) ? acos(fabs(movespeed - maxaccel) / speed) * RAD2DEG * (direction < 0 ? -1 : 1) : 0);
+        prebestangle = (speed > fabs(movespeed) ? acos(fabs(movespeed) / speed) * RAD2DEG * (direction < 0 ? -1 : 1) : 0);
         odd_bestangle = -bestangle - wishangle;
         bestangle -= wishangle;
         prebestangle -= wishangle;
@@ -702,7 +702,7 @@ void HUD_StrafeHUD()
             drawfill(panel_pos + eX * (indicator_direction ? 0 : panel_size.x - direction_size_horizontal.x) + eY * panel_size.y, direction_size_horizontal, autocvar_hud_panel_strafehud_direction_color, autocvar_hud_panel_strafehud_direction_alpha * panel_fg_alpha, DRAWFLAG_NORMAL);
         }
 
-        if(speed < ((movespeed - maxaccel) + antiflicker_speed) && !immobile)
+        if(speed <= (fabs(movespeed - maxaccel) + antiflicker_speed) && !immobile)
         {
             bestangle_anywhere = true; // moving forward should suffice to gain speed
         }