-
Автор темы
- #1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
C++:
void c_resolver::do_antifreestand( valve::cs_player_t* player, lag_record_t* record )
{
/* part from 09.03.2023( i think ) */
auto left_data = g_penetration->get_dmg( g_local_player->shoot_pos( ), player->hitbox_pos( valve::e_hitbox::head, record->m_left_matrix ), player );
auto right_data = g_penetration->get_dmg( g_local_player->shoot_pos( ), player->hitbox_pos( valve::e_hitbox::head, record->m_right_matrix ), player );
/* idk what this shit does */
bool unk0{};
/* m_delta -> is at target yaw */
if ( left_data.m_dmg > right_data.m_dmg
&& std::abs( record->m_delta ) > 45 )
{
record->m_anim_side = e_anim_sides::left;
record->m_type = e_resolve_types::wall;
unk0 = true;
}
if ( !unk0 )
{
if ( left_data.m_dmg < right_data.m_dmg
&& std::abs( record->m_delta ) < 45 )
{
record->m_anim_side = e_anim_sides::right;
record->m_type = e_resolve_types::wall;
/* unk0 = false; */
}
}
auto center_data = g_penetration->get_dmg( g_local_player->shoot_pos( ), player->hitbox_pos( valve::e_hitbox::head, record->m_center_matrix ), player );
if ( center_data.m_dmg > left_data.m_dmg
|| center_data.m_dmg > right_data.m_dmg )
{
record->m_anim_side = e_anim_sides::center;
record->m_type = e_resolve_types::wall;
return;
}
else
goto need_to_clear_ok;
need_to_clear_ok:
record->m_anim_side = e_anim_sides::last;
record->m_type = e_resolve_types::none;
}