Вопрос Sound Esp

Пользователь
Статус
Оффлайн
Регистрация
5 Июл 2022
Сообщения
1,002
Реакции[?]
86
Поинты[?]
23K
Добрый день. Поделитесь пожалуйста рабочим кодом или исходником sound esp. Заранее всех благодарю
 
Эксперт
Статус
Оффлайн
Регистрация
30 Дек 2019
Сообщения
1,967
Реакции[?]
958
Поинты[?]
19K
Если два стула метода,
первый - footstep event
C++:
case hash( "player_footstep" ):
{
    if ( !event_player || event_player->get_origin( ).invalid_or_zero( ) )
        break;
   
    footsteps.at( event_player->get_index( ) ).push_back( event_player->get_origin( ), ctx::m_time )
} break;
другий - emit sound
C++:
for ( auto i = 0; i < sound_info.count( ); i++ )
    {
        auto& m_sound = sound_info[ i ];
        if ( m_sound.m_sound_source <= 0 || m_sound.m_sound_source >= values::m_max_players )
            continue;

        if ( m_sound.origin->is_zero( ) || !is_sound_valid( m_sound ) )
            continue;

        c_cs_player* player = c_cs_player::get_player_by_index( m_sound.m_sound_source );
        if ( !player || !player->is_alive( ) || !player->is_dormant( ) )
            continue;

        vec3_t from, to;
        trace_t tr;

        trace_filter filter;

        from = *m_sound.origin + vec3_t( 0, 0, 1 );
        to = from - vec3_t( 0, 0, 100 );

        filter.skip = player;

        interfaces::trace->trace_ray( ray_t( from, to ), mask_playersolid, &filter, &tr );

        if ( tr.allsolid )
            continue;

        *m_sound.origin = tr.fraction <= 0.97f ? tr.end : *m_sound.origin;
        footsteps.at( m_sound.m_sound_source ).push_back( *m_sound.origin, ctx::m_time )
    }
как их рисовать думаю сам додумаешь
 
Пользователь
Статус
Оффлайн
Регистрация
5 Июл 2022
Сообщения
1,002
Реакции[?]
86
Поинты[?]
23K
Если два стула метода,
первый - footstep event
C++:
case hash( "player_footstep" ):
{
    if ( !event_player || event_player->get_origin( ).invalid_or_zero( ) )
        break;
  
    footsteps.at( event_player->get_index( ) ).push_back( event_player->get_origin( ), ctx::m_time )
} break;
другий - emit sound
C++:
for ( auto i = 0; i < sound_info.count( ); i++ )
    {
        auto& m_sound = sound_info[ i ];
        if ( m_sound.m_sound_source <= 0 || m_sound.m_sound_source >= values::m_max_players )
            continue;

        if ( m_sound.origin->is_zero( ) || !is_sound_valid( m_sound ) )
            continue;

        c_cs_player* player = c_cs_player::get_player_by_index( m_sound.m_sound_source );
        if ( !player || !player->is_alive( ) || !player->is_dormant( ) )
            continue;

        vec3_t from, to;
        trace_t tr;

        trace_filter filter;

        from = *m_sound.origin + vec3_t( 0, 0, 1 );
        to = from - vec3_t( 0, 0, 100 );

        filter.skip = player;

        interfaces::trace->trace_ray( ray_t( from, to ), mask_playersolid, &filter, &tr );

        if ( tr.allsolid )
            continue;

        *m_sound.origin = tr.fraction <= 0.97f ? tr.end : *m_sound.origin;
        footsteps.at( m_sound.m_sound_source ).push_back( *m_sound.origin, ctx::m_time )
    }
как их рисовать думаю сам додумаешь
Примерно понял как сделать. Сейчас попробую. Спасибо
 
Участник
Статус
Оффлайн
Регистрация
21 Сен 2019
Сообщения
594
Реакции[?]
250
Поинты[?]
23K
Если два стула метода,
первый - footstep event
C++:
case hash( "player_footstep" ):
{
    if ( !event_player || event_player->get_origin( ).invalid_or_zero( ) )
        break;

    footsteps.at( event_player->get_index( ) ).push_back( event_player->get_origin( ), ctx::m_time )
} break;
другий - emit sound
C++:
for ( auto i = 0; i < sound_info.count( ); i++ )
    {
        auto& m_sound = sound_info[ i ];
        if ( m_sound.m_sound_source <= 0 || m_sound.m_sound_source >= values::m_max_players )
            continue;

        if ( m_sound.origin->is_zero( ) || !is_sound_valid( m_sound ) )
            continue;

        c_cs_player* player = c_cs_player::get_player_by_index( m_sound.m_sound_source );
        if ( !player || !player->is_alive( ) || !player->is_dormant( ) )
            continue;

        vec3_t from, to;
        trace_t tr;

        trace_filter filter;

        from = *m_sound.origin + vec3_t( 0, 0, 1 );
        to = from - vec3_t( 0, 0, 100 );

        filter.skip = player;

        interfaces::trace->trace_ray( ray_t( from, to ), mask_playersolid, &filter, &tr );

        if ( tr.allsolid )
            continue;

        *m_sound.origin = tr.fraction <= 0.97f ? tr.end : *m_sound.origin;
        footsteps.at( m_sound.m_sound_source ).push_back( *m_sound.origin, ctx::m_time )
    }
как их рисовать думаю сам додумаешь
Шо то, шо это хуета(оба метода = клиент саунды). Можно серверные саунды запилить в 1 хук и 10 строк(привет эзотерик).
killaura, legendware v3 поищи сам на гитхабе
Из легендвара можно спастить только...а нихуя от туда не надо пастить, сурс мусор(абсолютно все).
Добрый день. Поделитесь пожалуйста рабочим кодом или исходником sound esp. Заранее всех благодарю
Если тебе рейдж саунд есп требуется, то советую погуглить, куз на зарубежном форуме уже слили p2c саунд есп(как в ските, нле), правда под другую игру, но если у тебя есть brain, then you enjoy perfect sound esp.
 
Последнее редактирование:
Сверху Снизу