From 17d8d8caee4799ed112242257e5a0805320ef017 Mon Sep 17 00:00:00 2001 From: SmileyAG Date: Tue, 9 Aug 2022 15:03:21 +0400 Subject: [PATCH] Added bxt_tas_clientmaxspeed_in_prediction to use lower custom maxspeed value if cvar disabled --- BunnymodXT/cvars.cpp | 2 ++ BunnymodXT/cvars.hpp | 1 + BunnymodXT/modules/HwDLL.cpp | 5 +++-- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/BunnymodXT/cvars.cpp b/BunnymodXT/cvars.cpp index a58f7f2e5..b460257cd 100644 --- a/BunnymodXT/cvars.cpp +++ b/BunnymodXT/cvars.cpp @@ -11,6 +11,7 @@ namespace CVars CVarWrapper _bxt_bunnysplit_time_update_frequency("_bxt_bunnysplit_time_update_frequency", "41"); CVarWrapper _bxt_save_runtime_data_in_demos("_bxt_save_runtime_data_in_demos", "1"); CVarWrapper _bxt_tas_script_generation("_bxt_tas_script_generation", "1337"); + CVarWrapper bxt_tas_clientmaxspeed_in_prediction("bxt_tas_clientmaxspeed_in_prediction", "1"); CVarWrapper bxt_taslog_filename("bxt_taslog_filename", "taslogger.log"); CVarWrapper bxt_autopause("bxt_autopause", "0"); CVarWrapper bxt_interprocess_enable("bxt_interprocess_enable", "0"); @@ -186,6 +187,7 @@ namespace CVars &_bxt_norefresh, &_bxt_save_runtime_data_in_demos, &_bxt_tas_script_generation, + &bxt_tas_clientmaxspeed_in_prediction, &bxt_taslog_filename, &bxt_autopause, &bxt_interprocess_enable, diff --git a/BunnymodXT/cvars.hpp b/BunnymodXT/cvars.hpp index 96bae181b..c92c7758e 100644 --- a/BunnymodXT/cvars.hpp +++ b/BunnymodXT/cvars.hpp @@ -124,6 +124,7 @@ namespace CVars extern CVarWrapper _bxt_bunnysplit_time_update_frequency; extern CVarWrapper _bxt_save_runtime_data_in_demos; extern CVarWrapper _bxt_tas_script_generation; + extern CVarWrapper bxt_tas_clientmaxspeed_in_prediction; extern CVarWrapper bxt_taslog_filename; extern CVarWrapper bxt_autopause; extern CVarWrapper bxt_interprocess_enable; diff --git a/BunnymodXT/modules/HwDLL.cpp b/BunnymodXT/modules/HwDLL.cpp index f5498349a..2b8f1648d 100644 --- a/BunnymodXT/modules/HwDLL.cpp +++ b/BunnymodXT/modules/HwDLL.cpp @@ -3789,6 +3789,7 @@ void HwDLL::RegisterCVarsAndCommandsIfNeeded() RegisterCVar(CVars::_bxt_taslog); RegisterCVar(CVars::_bxt_min_frametime); RegisterCVar(CVars::_bxt_tas_script_generation); + RegisterCVar(CVars::bxt_tas_clientmaxspeed_in_prediction); RegisterCVar(CVars::bxt_taslog_filename); RegisterCVar(CVars::bxt_autopause); RegisterCVar(CVars::bxt_bhopcap); @@ -4751,9 +4752,9 @@ HLStrafe::MovementVars HwDLL::GetMovementVars() vars.Frametime = GetFrameTime(); vars.Maxvelocity = CVars::sv_maxvelocity.GetFloat(); - if (cl.DoesGameDirMatch("paranoia")) + if (CVars::bxt_tas_clientmaxspeed_in_prediction.GetBool() && cl.DoesGameDirMatch("paranoia")) vars.Maxspeed = cl.pEngfuncs->GetClientMaxspeed() * 3.2f; // GetMaxSpeed is factor here, 3.2f is approx. multiplier - else if (cl.pEngfuncs && (cl.pEngfuncs->GetClientMaxspeed() > 0.0f)) + else if (CVars::bxt_tas_clientmaxspeed_in_prediction.GetBool() && cl.pEngfuncs && (cl.pEngfuncs->GetClientMaxspeed() > 0.0f)) vars.Maxspeed = cl.pEngfuncs->GetClientMaxspeed(); // Get true maxspeed in CS games & other mods (Poke646 e.g.) else vars.Maxspeed = CVars::sv_maxspeed.GetFloat();