Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

Исходник En1gma.tech source code

backtrack cpp:
Expand Collapse Copy
namespace hack::core::features {

    record_t::record_t( cs2::c_base_entity* target ) noexcept {
        if ( !target || !cs2::g_global_vars )
            return;

        m_simulation_tick = cs2::g_global_vars->m_cur_time;
        m_target = target;

        if ( !target->m_pGameSceneNode() )
            return;

        m_origin = target->m_pGameSceneNode( )->m_vecOrigin( );
        m_abs_origin = target->m_pGameSceneNode( )->m_vecAbsOrigin( );
        m_rotation = target->m_pGameSceneNode( )->m_angRotation( );
        m_abs_rotation = target->m_pGameSceneNode( )->m_angAbsRotation( );

        memcpy( &m_bone_arr, *target->m_pGameSceneNode( )->get_skeleton_instance( )->m_bone_arr,
                sizeof( cs2::bone_data_t ) * 128 );
    }

    template <typename fn_t>
    void record_t::execute( cs2::c_base_entity* target, fn_t func ) noexcept {
        if ( !target->m_pGameSceneNode( ) || !*target->m_pGameSceneNode( )->get_skeleton_instance( )->m_bone_arr )
            return;

        const auto backup_origin = target->m_pGameSceneNode( )->m_vecOrigin( );
        const auto backup_abs_origin = target->m_pGameSceneNode( )->m_vecAbsOrigin( );
        const auto backup_rotation = target->m_pGameSceneNode( )->m_angRotation( );
        const auto backup_abs_rotation = target->m_pGameSceneNode( )->m_angAbsRotation( );
        cs2::bone_data_t backup_bone_arr[ 128 ];

        memcpy( &backup_bone_arr, target->m_pGameSceneNode( )->get_skeleton_instance( )->m_bone_arr,
                sizeof( cs2::bone_data_t ) * 128 );

        target->m_pGameSceneNode( )->m_vecOrigin( ) = m_origin;
        target->m_pGameSceneNode( )->m_vecAbsOrigin( ) = m_abs_origin;
        target->m_pGameSceneNode( )->m_angRotation( ) = m_rotation;
        target->m_pGameSceneNode( )->m_angAbsRotation( ) = m_abs_rotation;
        memcpy( *target->m_pGameSceneNode( )->get_skeleton_instance( )->m_bone_arr, &m_bone_arr,
                sizeof( cs2::bone_data_t ) * 128 );

        func( );

        target->m_pGameSceneNode( )->m_vecOrigin( ) = backup_origin;
        target->m_pGameSceneNode( )->m_vecAbsOrigin( ) = backup_abs_origin;
        target->m_pGameSceneNode( )->m_angRotation( ) = backup_rotation;
        target->m_pGameSceneNode( )->m_angAbsRotation( ) = backup_abs_rotation;
        memcpy( *target->m_pGameSceneNode( )->get_skeleton_instance( )->m_bone_arr, &backup_bone_arr,
                sizeof( cs2::bone_data_t ) * 128 );
    }

    void records_t::update( cs2::c_base_entity* target ) {
        if ( m_records.size() >= 21 ) {
            m_records.pop( );
        }

        m_records.push( record_t( target ) );
    }

}
esoterikgpt
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
backtrack cpp:
Expand Collapse Copy
namespace hack::core::features {

    record_t::record_t( cs2::c_base_entity* target ) noexcept {
        if ( !target || !cs2::g_global_vars )
            return;

        m_simulation_tick = cs2::g_global_vars->m_cur_time;
        m_target = target;

        if ( !target->m_pGameSceneNode() )
            return;

        m_origin = target->m_pGameSceneNode( )->m_vecOrigin( );
        m_abs_origin = target->m_pGameSceneNode( )->m_vecAbsOrigin( );
        m_rotation = target->m_pGameSceneNode( )->m_angRotation( );
        m_abs_rotation = target->m_pGameSceneNode( )->m_angAbsRotation( );

        memcpy( &m_bone_arr, *target->m_pGameSceneNode( )->get_skeleton_instance( )->m_bone_arr,
                sizeof( cs2::bone_data_t ) * 128 );
    }

    template <typename fn_t>
    void record_t::execute( cs2::c_base_entity* target, fn_t func ) noexcept {
        if ( !target->m_pGameSceneNode( ) || !*target->m_pGameSceneNode( )->get_skeleton_instance( )->m_bone_arr )
            return;

        const auto backup_origin = target->m_pGameSceneNode( )->m_vecOrigin( );
        const auto backup_abs_origin = target->m_pGameSceneNode( )->m_vecAbsOrigin( );
        const auto backup_rotation = target->m_pGameSceneNode( )->m_angRotation( );
        const auto backup_abs_rotation = target->m_pGameSceneNode( )->m_angAbsRotation( );
        cs2::bone_data_t backup_bone_arr[ 128 ];

        memcpy( &backup_bone_arr, target->m_pGameSceneNode( )->get_skeleton_instance( )->m_bone_arr,
                sizeof( cs2::bone_data_t ) * 128 );

        target->m_pGameSceneNode( )->m_vecOrigin( ) = m_origin;
        target->m_pGameSceneNode( )->m_vecAbsOrigin( ) = m_abs_origin;
        target->m_pGameSceneNode( )->m_angRotation( ) = m_rotation;
        target->m_pGameSceneNode( )->m_angAbsRotation( ) = m_abs_rotation;
        memcpy( *target->m_pGameSceneNode( )->get_skeleton_instance( )->m_bone_arr, &m_bone_arr,
                sizeof( cs2::bone_data_t ) * 128 );

        func( );

        target->m_pGameSceneNode( )->m_vecOrigin( ) = backup_origin;
        target->m_pGameSceneNode( )->m_vecAbsOrigin( ) = backup_abs_origin;
        target->m_pGameSceneNode( )->m_angRotation( ) = backup_rotation;
        target->m_pGameSceneNode( )->m_angAbsRotation( ) = backup_abs_rotation;
        memcpy( *target->m_pGameSceneNode( )->get_skeleton_instance( )->m_bone_arr, &backup_bone_arr,
                sizeof( cs2::bone_data_t ) * 128 );
    }

    void records_t::update( cs2::c_base_entity* target ) {
        if ( m_records.size() >= 21 ) {
            m_records.pop( );
        }

        m_records.push( record_t( target ) );
    }

}
esoterikgpt
это не сурс en1gma это база от создателя en1gma.
 
Назад
Сверху Снизу