Adaptive AA Help

Забаненный
Статус
Оффлайн
Регистрация
23 Окт 2017
Сообщения
42
Реакции[?]
11
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Короче, суть проблемы. Я тут решил испытать адаптивный аа в сурсе "Hollyday", и выявил такую проблему, что он работает как на противников, так и на союзников. Что бы я ни пытался сделать, он работал или на всех, или никак. Прошу помощи. Отблагодарю симпой. Прошу помочь сделать его только на противников, но никак не на союзников или на всех.
Код:
void adaptive2(CUserCmd * pCmd, bool& bSendPacket, IClientEntity* pEntity) {
        auto fov_to_player = [](Vector view_offset, Vector view, IClientEntity* m_entity, int hitbox)
        {
            CONST FLOAT MaxDegrees = 180.0f;
            Vector Angles = view;
            Vector Origin = view_offset;
            Vector Delta(0, 0, 0);
            Vector Forward(0, 0, 0);
            AngleVectors3(Angles, &Forward);
            Vector AimPos = GetHitboxPosition(m_entity, hitbox);
            VectorSubtract(AimPos, Origin, Delta);
            Normalize(Delta, Delta);
            FLOAT DotProduct = Forward.Dot(Delta);
            return (acos(DotProduct) * (MaxDegrees / PI));
        };

        auto m_local = hackManager.pLocal();

        int target = -1;
        float mfov = 20;

        Vector viewoffset = m_local->GetOrigin() + m_local->GetViewOffset();
        Vector view; Interfaces::Engine->GetViewAngles(view);

        for (int i = 0; i < Interfaces::Engine->GetMaxClients(); i++) {
            IClientEntity* m_entity = Interfaces::EntList->GetClientEntity(i);

            if (m_entity && m_entity->IsDormant() == false && m_entity->IsAlive() && m_entity->GetIndex() != hackManager.pLocal()->GetIndex()) {

                float fov = fov_to_player(viewoffset, view, m_entity, 0);
                if (fov < mfov) {
                    mfov = fov;
                    target = i;
                }
            }
        }

        ADAPTIVE_SIDE2 side = ADAPTIVE_UNKNOWN2;

        Vector at_target_angle;

        if (target) {
            auto m_entity = Interfaces::EntList->GetClientEntity(target);
            
            if (m_entity && m_entity->IsDormant() == false && m_entity->IsAlive() && m_entity->GetIndex() != hackManager.pLocal()->GetIndex()) {
                Vector pos_enemy;
                if (Render::WorldToScreen(m_entity->GetOrigin(), pos_enemy)) {
                    CalcAngle(m_local->GetOrigin(), m_entity->GetOrigin(), at_target_angle);

                    POINT mouse = GUI.GetMouse();

                    if (mouse.x > pos_enemy.x) side = ADAPTIVE_RIGHT2;
                    else if (mouse.x < pos_enemy.x) side = ADAPTIVE_LEFT2;
                    else side = ADAPTIVE_UNKNOWN2;
                }
            }
        }

        if (side == ADAPTIVE_RIGHT) {
            pCmd->viewangles.y = at_target_angle.y + 90;
        }
        else if (side == ADAPTIVE_LEFT) {
            pCmd->viewangles.y = at_target_angle.y - 90;
        }

        if (side == ADAPTIVE_UNKNOWN) {
            pCmd->viewangles.y -= 180;
        }
    }
 
Забаненный
Статус
Оффлайн
Регистрация
23 Окт 2017
Сообщения
42
Реакции[?]
11
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Участник
Статус
Оффлайн
Регистрация
12 Май 2017
Сообщения
405
Реакции[?]
198
Поинты[?]
9K
И куда мне сие чудо пихать?
Код:
if (m_entity && m_entity->IsDormant() == false && m_entity->IsAlive() && m_entity->GetIndex() != hackManager.pLocal()->GetIndex())
на
Код:
if (m_entity && m_entity->IsDormant() == false && m_entity->IsAlive() && m_entity->GetIndex() != hackManager.pLocal()->GetIndex() &&
m_entity->GetTeam() != Hacks.LocalPlayer->GetTeam()
)
 
Забаненный
Статус
Оффлайн
Регистрация
23 Окт 2017
Сообщения
42
Реакции[?]
11
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
if (m_entity && m_entity->IsDormant() == false && m_entity->IsAlive() && m_entity->GetIndex() != hackManager.pLocal()->GetIndex())
на
if (m_entity && m_entity->IsDormant() == false && m_entity->IsAlive() && m_entity->GetIndex() != hackManager.pLocal()->GetIndex() &&
m_entity->GetTeam() != Hacks.LocalPlayer->GetTeam()
)
Хорошо, как стану пользователем, поставлю сябку. И кстать, СПС за бесплатную помощь.
 
midnight.im
Администратор
Статус
Оффлайн
Регистрация
1 Июл 2015
Сообщения
1,650
Реакции[?]
2,171
Поинты[?]
161K
Забаненный
Статус
Оффлайн
Регистрация
23 Окт 2017
Сообщения
42
Реакции[?]
11
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
а бля проебался, соре
показалось вместо индекса тим
Блик, ничего страшного, с кем не бывает, ошибся ты, ну и что? Самое главное, что ты понял и осознал ошибку)
 
Сверху Снизу