Вопрос Ресольвер

Начинающий
Статус
Оффлайн
Регистрация
9 Ноя 2020
Сообщения
153
Реакции[?]
7
Поинты[?]
0
Подгоните это под лв, пожалуйста


C++:
void Resolver::ResolveEntity ( Player* player, AimPlayer* data, LagComp::LagRecord_t* record, LagComp::LagRecord_t* prev_record ) {
    // get the players max rotation.
    float max_rotation = record->m_pEntity->GetMaxBodyRotation ( );

    if ( !record->m_pState )
        return;

    const auto info = g_anims.GetAnimationInfo ( record->m_pEntity );
    if ( !info )
        return;

    if ( !g_cfg [ ( "aimbot_resolver" ) ].get< bool > ( ) )
        return;

    if ( !prev_record )
        return;


    float eye_yaw = record->m_pState->eye_angles_y;

    // detect if player is using maximum desync.
    data->m_extending = record->m_pLayers [ 3 ].m_cycle == 0.f && record->m_pLayers [ 3 ].m_weight == 0.f;

    // resolve shooting players separately.
    if ( record->m_bDidShot ) {
        record->m_pState->goal_feet_yaw = eye_yaw + Resolver::ResolveShot ( data, record );
        return;
    }
    else {
        if ( record->m_pEntity->m_vecVelocity ( ).length_2d ( ) <= 0.1 ) {
            float angle_difference = math::AngleDiff ( eye_yaw, record->m_pState->goal_feet_yaw );
            data->m_index = 2 * angle_difference <= 0.0f ? 1 : -1;
        }
        else
        {
            if ( prev_record && !( ( int ) record->m_pLayers [ 12 ].m_weight * 1000.f ) && record->m_pEntity->m_vecVelocity ( ).length_2d ( ) > 0.1 &&
                ( ( int ) record->m_pLayers [ 6 ].m_weight * 1000.f ) == ( ( int ) prev_record->m_pLayers [ 6 ].m_weight * 1000.f ) ) {

                auto m_layer_delta1 = abs ( record->m_pLayers [ 6 ].m_playback_rate - record->center_layers [ 6 ].m_playback_rate );
                auto m_layer_delta2 = abs ( record->m_pLayers [ 6 ].m_playback_rate - record->left_layers [ 6 ].m_playback_rate );
                auto m_layer_delta3 = abs ( record->m_pLayers [ 6 ].m_playback_rate - record->right_layers [ 6 ].m_playback_rate );

                if ( m_layer_delta1 < m_layer_delta2
                    || m_layer_delta3 <= m_layer_delta2
                    || ( signed int ) ( float ) ( m_layer_delta2 * 1000.0 ) )
                {
                    if ( m_layer_delta1 >= m_layer_delta3
                        && m_layer_delta2 > m_layer_delta3
                        && !( signed int ) ( float ) ( m_layer_delta3 * 1000.0 ) )
                    {
                        data->m_index = 1;
                    }
                }
                else
                {
                    data->m_index = -1;
                }
            }
        }
    }

    switch ( data->m_missed_shots % 3 ) {
        case 0: //default
        record->m_pState->goal_feet_yaw = build_server_abs_yaw ( player, record->m_angEyeAngles.y + max_rotation * data->m_index );
        break;
        case 1: //reverse
        record->m_pState->goal_feet_yaw = build_server_abs_yaw ( player, record->m_angEyeAngles.y + max_rotation * -data->m_index );
        break;
        case 2: //middle
        record->m_pState->goal_feet_yaw = build_server_abs_yaw ( player, record->m_angEyeAngles.y );
        break;
    }

}
 
Сверху Снизу