void misc::hide_shots(CUserCmd* m_pcmd, bool should_work)
{
hide_shots_enabled = true;
if (!g_cfg.ragebot.enable)
{
hide_shots_enabled = false;
hide_shots_key = false;
if (should_work)
{
g_ctx.globals.ticks_allowed = 0;
g_ctx.globals.next_tickbase_shift = 0;
}
return;
}
if (!g_cfg.antiaim.hide_shots)
{
hide_shots_enabled = false;
hide_shots_key = false;
if (should_work)
{
g_ctx.globals.ticks_allowed = 0;
g_ctx.globals.next_tickbase_shift = 0;
}
return;
}
if (g_cfg.antiaim.hide_shots_key.key <= KEY_NONE || g_cfg.antiaim.hide_shots_key.key >= KEY_MAX)
{
hide_shots_enabled = false;
hide_shots_key = false;
if (should_work)
{
g_ctx.globals.ticks_allowed = 0;
g_ctx.globals.next_tickbase_shift = 0;
}
return;
}
if (!should_work && rapid_fire_key)
{
hide_shots_enabled = false;
hide_shots_key = false;
return;
}
if (!hide_shots_key)
{
hide_shots_enabled = false;
g_ctx.globals.ticks_allowed = 0;
g_ctx.globals.next_tickbase_shift = 0;
return;
}
rapid_fire_key = false;
if (g_ctx.local()->m_bGunGameImmunity() || g_ctx.local()->m_fFlags() & FL_FROZEN)
{
hide_shots_enabled = false;
g_ctx.globals.ticks_allowed = 0;
g_ctx.globals.next_tickbase_shift = 0;
return;
}
if (g_ctx.globals.fakeducking)
{
hide_shots_enabled = false;
g_ctx.globals.ticks_allowed = 0;
g_ctx.globals.next_tickbase_shift = 0;
return;
}
if (antiaim::get().freeze_check)
return;
g_ctx.globals.next_tickbase_shift = m_gamerules()->m_bIsValveDS() ? 6 : 9;
auto revolver_shoot = g_ctx.globals.weapon->m_iItemDefinitionIndex() == WEAPON_REVOLVER && !g_ctx.globals.revolver_working && (m_pcmd->m_buttons & IN_ATTACK || m_pcmd->m_buttons & IN_ATTACK2);
auto weapon_shoot = m_pcmd->m_buttons & IN_ATTACK && g_ctx.globals.weapon->m_iItemDefinitionIndex() != WEAPON_REVOLVER || m_pcmd->m_buttons & IN_ATTACK2 && g_ctx.globals.weapon->is_knife() || revolver_shoot;
if (g_ctx.send_packet && !g_ctx.globals.weapon->is_grenade() && weapon_shoot)
g_ctx.globals.tickbase_shift = g_ctx.globals.next_tickbase_shift;
}