Исходник Animlayer Resolver для лв

ЧВК EB_LAN
Эксперт
Статус
Оффлайн
Регистрация
26 Янв 2021
Сообщения
1,555
Реакции[?]
518
Поинты[?]
189K
Щас вы ахуеете, я для вас сделаю так чтоб он работал (Это для самых маленьких которые не инклюдали в анимфиксе его)

В resolver.cpp под
C++:
void resolver::reset(){

    player = nullptr;
    player_record = nullptr;

    side = false;
    fake = false;

    was_first_bruteforce = false;
    was_second_bruteforce = false;

    original_goal_feet_yaw = 0.0f;
    original_pitch = 0.0f;
}
Вставляем ЭТО
C++:
void resolver::animlayer_resolver()
{
    if (!g_ctx.local()->is_alive())
        return;
    if (!player->is_player())
        return;

    float move_delta;
    float static_desync = 58.f;
    float low_desync = 30.f;
    float random_desync = math::random_float(-58, 58);

    int move_side;
    player_t* e;
    auto animstate = e->get_animation_state();
    float speed = player->m_vecVelocity().Length2D();
    if (player->m_fFlags() & FL_ONGROUND)
    {
        if (speed > 0.1f && (player_record->layers[6].m_flWeight * 1000.0f) == (player_record->layers[6].m_flWeight * 1000.0f))
        {
            if (player_record->layers[3].m_flWeight == 0.f && player_record->layers[3].m_flCycle == 0.f && player_record->layers[6].m_flWeight == 0.f)
            {
                auto move_delta = math::AngleDiff(player->m_angEyeAngles().y, original_goal_feet_yaw);
                move_side = (2 * (move_delta <= 0.0f) - 1) > 0.0f ? -1 : 1;
                math::normalize_yaw(player->m_angEyeAngles().y + move_side ? 58.f : -58.f);
            }
            else if (!(player_record->layers[12].m_flWeight * 10000.0f))
            {
                if (player_record->layers[6].m_flWeight * 10000.0f == int(player_record->layers[6].m_flWeight * 10000.0f))
                {
                    float delta_eye = abs(resolver_layers[0][6].m_flPlaybackRate - player_record->layers[6].m_flPlaybackRate);
                    float delta_negative = abs(resolver_layers[1][6].m_flPlaybackRate - player_record->layers[6].m_flPlaybackRate);
                    float delta_positive = abs(resolver_layers[2][6].m_flPlaybackRate - player_record->layers[6].m_flPlaybackRate);

                    if ((delta_eye * 10000.0f) != (delta_negative * 10000.0f)) {
                        if (move_delta <= delta_eye)
                            move_delta = delta_eye;
                        else if (move_delta > delta_eye)
                            move_delta = delta_negative;
                        else
                            move_delta = delta_positive;

                        if (!(move_delta * 1000.0f) || (delta_eye * 10000.0f) != (delta_negative * 10000.0f)) {
                            if (move_delta == delta_negative) {
                                move_side = -1;
                            }
                            else if (move_delta == delta_positive) {
                                move_side = 1;
                            }
                        }
                    }
                }
            }
        
        if (g_ctx.globals.missed_shots[player->EntIndex()] > 1)
        {
            switch (g_ctx.globals.missed_shots[player->EntIndex()] % 5)
            {
            case 0:
                animstate->m_flGoalFeetYaw = math::normalize_yaw(move_side ? player->m_angEyeAngles().y + static_desync : player->m_angEyeAngles().y - static_desync);
                break;
            case 1:
                animstate->m_flGoalFeetYaw = math::normalize_yaw(move_side ? player->m_angEyeAngles().y + low_desync : player->m_angEyeAngles().y - low_desync);
                break;

                //--Тут 3 рандома-и-они-нужны-на-всякий-случай--\\

            case 2:
                animstate->m_flGoalFeetYaw = math::normalize_yaw(move_side ? player->m_angEyeAngles().y + random_desync : player->m_angEyeAngles().y - random_desync);
                break;
            case 3:
                animstate->m_flGoalFeetYaw = math::normalize_yaw(move_side ? player->m_angEyeAngles().y + random_desync : player->m_angEyeAngles().y - random_desync);
                break;
            case 4:
                animstate->m_flGoalFeetYaw = math::normalize_yaw(move_side ? player->m_angEyeAngles().y + random_desync : player->m_angEyeAngles().y - random_desync);
                break;

                //----------------------------------------------\\
                }
            }
        }
    }
}
ДАЛЬШЕ ЗАХОДИМ В animation_system.h И НАХОДИМ class resolver, и там надо под
C++:
    void initialize(player_t* e, adjust_data* record, const float& goal_feet_yaw, const float& pitch);
    void reset();
Вписать
C++:
void animlayer_resolver();
И надо над public: вписать
C++:
    AnimationLayer layers[13];
    AnimationLayer resolver_layers[3][13];
Дальше ЗАХОДИМ В animation_system.cpp жмём ctrl + f и ищем эту строку
C++:
player_resolver[e->EntIndex()].initialize(e, record, previous_goal_feet_yaw[e->EntIndex()], e->m_angEyeAngles().x);
и под ней вставляем
C++:
player_resolver[e->EntIndex()].animlayer_resolver();

Кстати azazinc тут причастен
 
Последнее редактирование:
шатап книга
Забаненный
Статус
Оффлайн
Регистрация
7 Мар 2020
Сообщения
485
Реакции[?]
119
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Щас вы ахуеете, я для вас сделаю так чтоб он работал (Это для самых маленьких которые не инклюдали в анимфиксе его)

В resolver.cpp под
C++:
void resolver::reset(){

    player = nullptr;
    player_record = nullptr;

    side = false;
    fake = false;

    was_first_bruteforce = false;
    was_second_bruteforce = false;

    original_goal_feet_yaw = 0.0f;
    original_pitch = 0.0f;
}
Вставляем ЭТО
C++:
void animlayer_resolver()
{

    if (!g_ctx.local()->is_alive())
        return;
    if (!player->is_player())
        return;

    float static_desync = 58.f;
    float low_desync = 30.f;
    float random_desync = math::RandomFloat(-58, 58);

    int move_side;
    player_t* e;
    auto animstate = e->GetAnimState();
    if (player->m_fFlags() & FL_ONGROUND)
    {
        if (player->m_vecVelocity().Length2D() > 0.1f)
        {
            if (player_record->layers[3].m_flWeight == 0.f && player_record->layers[3].m_flCycle == 0.f && player_record->layers[6].m_flWeight == 0.f)
            {
                auto move_delta = math::AngleDiff(player->m_angEyeAngles().y, original_goal_feet_yaw);
                move_side = (2 * (move_delta <= 0.0f) - 1) > 0.0f ? -1 : 1;
                math::normalize_yaw(player->m_angEyeAngles().y + move_side ? 58.f : -58.f);
            }
            else if (!(player_record->layers[12].m_flWeight * 10000.0f))
            {
                if (player_record->layers[6].m_flWeight * 10000.0f == int(player_record->layers[6].m_flWeight * 10000.0f))
                {
                    float delta_eye = abs(resolver_layers[0][6].m_flPlaybackRate - player_record->layers[6].m_flPlaybackRate);
                    float delta_negative = abs(resolver_layers[1][6].m_flPlaybackRate - player_record->layers[6].m_flPlaybackRate);
                    float delta_positive = abs(resolver_layers[2][6].m_flPlaybackRate - player_record->layers[6].m_flPlaybackRate);

                    if ( ( delta_eye * 10000.0f ) != ( delta_negative * 10000.0f ) ) {
                         if ( move_delta <= delta_eye )
                         move_delta = delta_eye;
                    else if ( move_delta > delta_eye )
                         move_delta = delta_negative;
                    else
                         move_delta = delta_positive;
              
       if ( !( move_delta * 1000.0f ) || ( delta_eye * 10000.0f ) != ( delta_negative * 10000.0f ) ) {
            if ( move_delta == delta_negative ) {
                record->side = -1;
                record->type = 1;
            }
            else if ( move_delta == delta_positive ) {
                record->side = 1;
                record->type = 1;
            }
        }

                }
            }
        }
    }

    animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + (58 * move_side));
    if (g_ctx.globals.missed_shots[player->EntIndex()] > 1)
    {
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 5)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(move_side ? player->m_angEyeAngles().y + static_desync : player->m_angEyeAngles().y - static_desync);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(move_side ? player->m_angEyeAngles().y + low_desync : player->m_angEyeAngles().y - low_desync);
            break;

            //--Тут 3 рандома-и-они-нужны-на-всякий-случай--\\

        case 2:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(move_side ? player->m_angEyeAngles().y + random_desync : player->m_angEyeAngles().y - random_desync);
            break;
        case 3:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(move_side ? player->m_angEyeAngles().y + random_desync : player->m_angEyeAngles().y - random_desync);
            break;
        case 4:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(move_side ? player->m_angEyeAngles().y + random_desync : player->m_angEyeAngles().y - random_desync);
            break;

            //----------------------------------------------\\

        }
    }
}
ДАЛЬШЕ ЗАХОДИМ В animation_system.h И НАХОДИМ class resolver, и там надо под
void initialize(player_t* e, adjust_data* record, const float& goal_feet_yaw, const float& pitch);
void reset();
Вписать
void animlayer_resolver();

Дальше ЗАХОДИМ В animation_system.cpp жмём ctrl + f и ищем эту строку
player_resolver[e->EntIndex()].initialize(e, record, previous_goal_feet_yaw[e->EntIndex()], e->m_angEyeAngles().x);

и под ней вставляем
player_resolver[e->EntIndex()].animlayer_resolver();


Сразу скажу, про стэнды забудьте, либо спастите с другого ресика фикс стэндов ибо мне лень его дописывать.
Кстати azazinc тут причастен
они все так много говорят, мне все равно
upd.
оно не будет работать без обновления лееров и т.д
 
ЧВК EB_LAN
Эксперт
Статус
Оффлайн
Регистрация
26 Янв 2021
Сообщения
1,555
Реакции[?]
518
Поинты[?]
189K
они все так много говорят, мне все равно
upd.
оно не будет работать без обновления лееров и т.д
Та я знаю брат, апдейт анимок сливали уже(Я к тому что берёшь и пастишь, и сидишь радуешься).
 
iq abuser
Пользователь
Статус
Оффлайн
Регистрация
16 Апр 2021
Сообщения
649
Реакции[?]
138
Поинты[?]
1K
ты же мне его давал, от него же фпс проседает как от 1 строчки кода Винни Зе Бруха)))
 
ЧВК EB_LAN
Эксперт
Статус
Оффлайн
Регистрация
26 Янв 2021
Сообщения
1,555
Реакции[?]
518
Поинты[?]
189K
Вэсэаэаэсэаэаэмэаэахаэпэахаэ ты же мне его давал, от него же фпс проседает как от 1 строчки кода Винни Зе Бруха)))
Кстати я давал не прям его, ибо в этот я пихнул леер парт немезиса.
Смотри что бы ты не упал
Ну давай пасти пасти пока разрешаю))
 
шатап книга
Забаненный
Статус
Оффлайн
Регистрация
7 Мар 2020
Сообщения
485
Реакции[?]
119
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Кстати я давал не прям его, ибо в этот я пихнул леер парт немезиса.

Ну давай пасти пасти пока разрешаю))
крайн или креин или как у тебя там ник, а смысл от этого немезис парта, если он вронг?
 
Участник
Статус
Оффлайн
Регистрация
19 Апр 2020
Сообщения
1,179
Реакции[?]
314
Поинты[?]
152K
Кстати я давал не прям его, ибо в этот я пихнул леер парт немезиса.

Ну давай пасти пасти пока разрешаю))
Мне этого не надо есть свое
крайн или креин или как у тебя там ник, а смысл от этого немезис парта, если он вронг?
если он вронг?
Он нормальный только один мем бы пофиксить и все
 
ЧВК EB_LAN
Эксперт
Статус
Оффлайн
Регистрация
26 Янв 2021
Сообщения
1,555
Реакции[?]
518
Поинты[?]
189K
Модератор форума
Участник
Статус
Оффлайн
Регистрация
26 Янв 2020
Сообщения
378
Реакции[?]
157
Поинты[?]
9K
Забаненный
Статус
Оффлайн
Регистрация
22 Мар 2021
Сообщения
1,019
Реакции[?]
314
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Ты хотяб половину чеков на работоспобность проверял?)))
крайн или креин или как у тебя там ник, а смысл от этого немезис парта, если он вронг?
Где здесь немезис вообще мля. Ни проверок на 979 ниче
 
iq abuser
Пользователь
Статус
Оффлайн
Регистрация
16 Апр 2021
Сообщения
649
Реакции[?]
138
Поинты[?]
1K
ЧВК EB_LAN
Эксперт
Статус
Оффлайн
Регистрация
26 Янв 2021
Сообщения
1,555
Реакции[?]
518
Поинты[?]
189K
Ты хотяб половину чеков на работоспобность проверял?)))

Где здесь немезис вообще мля. Ни проверок на 979 ниче
ауе челик сливал леер парт как он писал с дампа немки
 
PPHUD ALPHA USER
Пользователь
Статус
Оффлайн
Регистрация
9 Май 2018
Сообщения
719
Реакции[?]
101
Поинты[?]
0
либо я чета не понимаю либо у меня сурс нищий который не имеет AngleDiff
 
ЧВК EB_LAN
Эксперт
Статус
Оффлайн
Регистрация
26 Янв 2021
Сообщения
1,555
Реакции[?]
518
Поинты[?]
189K
либо я чета не понимаю либо у меня сурс нищий который не имеет AngleDiff
Закинь в math.cpp
C++:
    float AngleDiff(float destAngle, float srcAngle) {
        float delta;

        delta = fmodf(destAngle - srcAngle, 360.0f);
        if (destAngle > srcAngle) {
            if (delta >= 180)
                delta -= 360;
        }
        else {
            if (delta <= -180)
                delta += 360;
        }
        return delta;
    }
И в math.hpp в namespace math
C++:
 float AngleDiff(float destAngle, float srcAngle);
 
PPHUD ALPHA USER
Пользователь
Статус
Оффлайн
Регистрация
9 Май 2018
Сообщения
719
Реакции[?]
101
Поинты[?]
0
Закинь в math.cpp
C++:
    float AngleDiff(float destAngle, float srcAngle) {
        float delta;

        delta = fmodf(destAngle - srcAngle, 360.0f);
        if (destAngle > srcAngle) {
            if (delta >= 180)
                delta -= 360;
        }
        else {
            if (delta <= -180)
                delta += 360;
        }
        return delta;
    }
И в math.hpp в namespace math
C++:
 float AngleDiff(float destAngle, float srcAngle);
1633248722896.pngпри включении рейджа тут вылетает в чем может быть трабл?
 
шатап книга
Забаненный
Статус
Оффлайн
Регистрация
7 Мар 2020
Сообщения
485
Реакции[?]
119
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ЧВК EB_LAN
Эксперт
Статус
Оффлайн
Регистрация
26 Янв 2021
Сообщения
1,555
Реакции[?]
518
Поинты[?]
189K
Похожие темы
Ответы
10
Просмотры
2K
Сверху Снизу