void __cdecl hooks::Hooked_CLMove(float flAccumulatedExtraSamples, bool bFinalTick)
{
if (g_ctx.globals.fakeducking)
return (clMove_fn(hooks::original_clmove)(flAccumulatedExtraSamples, bFinalTick));
if (g_ctx.globals.startcharge && g_ctx.globals.tocharge < g_ctx.globals.tochargeamount)
{
g_ctx.globals.tocharge++;
g_ctx.globals.ticks_allowed = g_ctx.globals.tocharge;
m_globals()->m_interpolation_amount = 0.f;
return;
}
(clMove_fn(hooks::original_clmove)(flAccumulatedExtraSamples, bFinalTick));
while (g_ctx.globals.shift_ticks)
{
g_ctx.globals.isshifting = true;
g_ctx.globals.shift_ticks--;
g_ctx.globals.tocharge--;
(clMove_fn(hooks::original_clmove)(flAccumulatedExtraSamples, bFinalTick));
}
g_ctx.globals.isshifting = false;
}