diff --git a/BunnymodXT/cvars.cpp b/BunnymodXT/cvars.cpp index 37211094..65ca4786 100644 --- a/BunnymodXT/cvars.cpp +++ b/BunnymodXT/cvars.cpp @@ -164,6 +164,7 @@ namespace CVars CVarWrapper bxt_viewmodel_ofs_forward("bxt_viewmodel_ofs_forward", "0"); CVarWrapper bxt_viewmodel_ofs_right("bxt_viewmodel_ofs_right", "0"); CVarWrapper bxt_viewmodel_ofs_up("bxt_viewmodel_ofs_up", "0"); + CVarWrapper bxt_viewmodel_bob_angled("bxt_viewmodel_bob_angled", "0"); const std::vector allCVars = { @@ -320,6 +321,7 @@ namespace CVars &bxt_cross_right_line, &bxt_viewmodel_ofs_forward, &bxt_viewmodel_ofs_right, - &bxt_viewmodel_ofs_up + &bxt_viewmodel_ofs_up, + &bxt_viewmodel_bob_angled }; } diff --git a/BunnymodXT/cvars.hpp b/BunnymodXT/cvars.hpp index 05dec085..fc8e9962 100644 --- a/BunnymodXT/cvars.hpp +++ b/BunnymodXT/cvars.hpp @@ -277,6 +277,7 @@ namespace CVars extern CVarWrapper bxt_viewmodel_ofs_forward; extern CVarWrapper bxt_viewmodel_ofs_right; extern CVarWrapper bxt_viewmodel_ofs_up; + extern CVarWrapper bxt_viewmodel_bob_angled; extern const std::vector allCVars; } diff --git a/BunnymodXT/modules/ClientDLL.cpp b/BunnymodXT/modules/ClientDLL.cpp index 53b0e445..b8d869cb 100644 --- a/BunnymodXT/modules/ClientDLL.cpp +++ b/BunnymodXT/modules/ClientDLL.cpp @@ -752,6 +752,7 @@ void ClientDLL::RegisterCVarsAndCommands() REG(bxt_viewmodel_ofs_forward); REG(bxt_viewmodel_ofs_right); REG(bxt_viewmodel_ofs_up); + REG(bxt_viewmodel_bob_angled); } if (ORIG_HUD_Init) @@ -1013,6 +1014,9 @@ HOOK_DEF_1(ClientDLL, void, __cdecl, V_CalcRefdef, ref_params_t*, pparams) right_offset * pparams->right[i] + up_offset * pparams->up[i]; } + + if (CVars::bxt_viewmodel_bob_angled.GetBool()) + view->curstate.angles = view->angles; } }