Подведи собственные итоги года совместно с YOUGAME и забери ценные призы! Перейти

Вопрос Lw autostop

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
18 Мар 2020
Сообщения
120
Реакции
6
C++:
Expand Collapse Copy
auto animlayer = g_ctx.local()->get_animlayers()[1];

    if (animlayer.m_nSequence)
    {
        auto activity = g_ctx.local()->sequence_activity(animlayer.m_nSequence);

        if (activity == ACT_CSGO_RELOAD && animlayer.m_flWeight > 0.0f)
            return true;
    }

    auto weapon_info = g_ctx.globals.weapon->get_csweapon_info();

    if (!weapon_info)
        return true;

    auto max_speed = 0.33f * (g_ctx.globals.scoped ? weapon_info->flMaxPlayerSpeedAlt : weapon_info->flMaxPlayerSpeed);

    if (engineprediction::get().backup_data.velocity.Length2D() < max_speed)
        slowwalk::get().create_move(cmd);
    else
    {
        if (!(g_ctx.local()->m_fFlags() & FL_ONGROUND && engineprediction::get().backup_data.flags & FL_ONGROUND))
            return;

        auto pressed_move_key = cmd->m_buttons & IN_FORWARD || cmd->m_buttons & IN_MOVELEFT || cmd->m_buttons & IN_BACK || cmd->m_buttons & IN_MOVERIGHT || cmd->m_buttons & IN_JUMP;

        if (pressed_move_key)
            return;

        if (!((antiaim::get().type == ANTIAIM_LEGIT ? g_cfg.antiaim.desync : g_cfg.antiaim.type[antiaim::get().type].desync) && (antiaim::get().type == ANTIAIM_LEGIT ? !g_cfg.antiaim.legit_lby_type : !g_cfg.antiaim.lby_type) && (!g_ctx.globals.weapon->is_grenade() || g_cfg.esp.on_click & !(cmd->m_buttons & IN_ATTACK) && !(cmd->m_buttons & IN_ATTACK2))) || antiaim::get().condition(cmd)) //-V648
        {
            auto velocity = g_ctx.local()->m_vecVelocity();

            if (velocity.Length2D() > 20.0f)
            {
                Vector direction;
                Vector real_view;

                math::vector_angles(velocity, direction);
                m_engine()->GetViewAngles(real_view);

                direction.y = real_view.y - direction.y;

                Vector forward;
                math::angle_vectors(direction, forward);

                static auto cl_forwardspeed = m_cvar()->FindVar(crypt_str("cl_forwardspeed"));
                static auto cl_sidespeed = m_cvar()->FindVar(crypt_str("cl_sidespeed"));

                auto negative_forward_speed = -cl_forwardspeed->GetFloat();
                auto negative_side_speed = -cl_sidespeed->GetFloat();

                auto negative_forward_direction = forward * negative_forward_speed;
                auto negative_side_direction = forward * negative_side_speed;

                cmd->m_forwardmove = negative_forward_direction.x;
                cmd->m_sidemove = negative_side_direction.y;
            }
        }
        else
        {
            auto velocity = g_ctx.local()->m_vecVelocity();

            if (velocity.Length2D() > 20.0f)
            {
                Vector direction;
                Vector real_view;

                math::vector_angles(velocity, direction);
                m_engine()->GetViewAngles(real_view);

                direction.y = real_view.y - direction.y;

                Vector forward;
                math::angle_vectors(direction, forward);

                static auto cl_forwardspeed = m_cvar()->FindVar(crypt_str("cl_forwardspeed"));
                static auto cl_sidespeed = m_cvar()->FindVar(crypt_str("cl_sidespeed"));

                auto negative_forward_speed = -cl_forwardspeed->GetFloat();
                auto negative_side_speed = -cl_sidespeed->GetFloat();

                auto negative_forward_direction = forward * negative_forward_speed;
                auto negative_side_direction = forward * negative_side_speed;

                cmd->m_forwardmove = negative_forward_direction.x;
                cmd->m_sidemove = negative_side_direction.y;
            }



how could this be improved in any way?
 
Назад
Сверху Снизу