From 441066f5a455d456fa885f869a40a558e8ba2f02 Mon Sep 17 00:00:00 2001 From: nullifiedcat Date: Tue, 28 Nov 2017 19:35:35 +0300 Subject: [PATCH] small crits update --- src/crits.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/crits.cpp b/src/crits.cpp index 831b6beb..19bb8e84 100644 --- a/src/crits.cpp +++ b/src/crits.cpp @@ -24,11 +24,14 @@ int find_next_random_crit_for_weapon(IClientEntity *weapon) number = g_pUserCmd->command_number, found = 0, seed, - seed_md5; + seed_md5, + seed_backup; crithack_saved_state state; state.Save(weapon); + seed_backup = *g_PredictionRandomSeed; + while (!found && tries < 4096) { seed_md5 = MD5_PseudoRandom(number) & 0x7FFFFFFF; @@ -41,6 +44,7 @@ int find_next_random_crit_for_weapon(IClientEntity *weapon) ++number; } + *g_PredictionRandomSeed = seed_backup; state.Load(weapon); if (found) return number; @@ -83,7 +87,7 @@ bool force_crit(IClientEntity *weapon) { if (cached_calculation.init_command > g_pUserCmd->command_number || g_pUserCmd->command_number - cached_calculation.init_command > 4096 || - cached_calculation.command_number < g_pUserCmd->command_number) + (g_pUserCmd->command_number && (cached_calculation.command_number < g_pUserCmd->command_number))) cached_calculation.weapon_entity = 0; if (cached_calculation.weapon_entity == weapon->entindex()) return bool(cached_calculation.command_number);