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

Как узнать с какой стороны от игрока находится прицел?

yougame.biz/threads/99231
Забаненный
Забаненный
Статус
Оффлайн
Регистрация
31 Дек 2018
Сообщения
241
Реакции
31
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
В шапке (C++)
Если че база монеон
Если вы не знаете ответа - лучше ничего не пишите, поставьте отрицательную реакцию и идите прочь
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
я немного даун, можно код пж?
C++:
Expand Collapse Copy
int m_iSubResult = cmd->viewangles.x - player->GetHitboxPos( 8 ); // incorrect, lol, should be fized
std::string m_sDirection = ( m_iSubResult > 0 ) ? "left" : "right";
// TODO:
// fix cmd->viewangles ( replace it )
// check, if m_iSubResult = 0, then your crosshair aim at hitbox rn
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
C++:
Expand Collapse Copy
int m_iSubResult = cmd->viewangles.x - player->GetHitboxPos( 8 ); // incorrect, lol, should be fized
std::string m_sDirection = ( m_iSubResult > 0 ) ? "left" : "right";
// TODO:
// fix cmd->viewangles ( replace it )
// check, if m_iSubResult = 0, then your crosshair aim at hitbox rn
у меня в сурсе используется QAngle и эта помойка выдает ошибку, как пофиксить?
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
C++:
Expand Collapse Copy
    Vector vHitbox, vHitboxScreen;
    vHitbox = target->GetHitboxPos(HITBOX_NECK);

    if (M::WorldToScreen(vHitbox, vHitboxScreen))
    {
        if (G::ScreenWeight / 2 < vHitboxScreen.x)
        {
            // Противник справа
        }
        else if (G::ScreenWeight / 2 > vHitboxScreen.x)
        {
            // Противник слева
        }
    }

Можно, конечно, через углы сделать, так-как GetHitboxPos достаточно ресурсозатратная вещь, но так проще
 
C++:
Expand Collapse Copy
int m_iSubResult = cmd->viewangles.x - player->GetHitboxPos( 8 ); // incorrect, lol, should be fized
std::string m_sDirection = ( m_iSubResult > 0 ) ? "left" : "right";
// TODO:
// fix cmd->viewangles ( replace it )
// check, if m_iSubResult = 0, then your crosshair aim at hitbox rn
Ты от угла отнимаешь координату бошки энемеми? Чего.
Можно просто просчитать угол до энеми, и если < 0, то игрок слева и наоборот
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Ты от угла отнимаешь координату бошки энемеми? Чего.
Можно просто просчитать угол до энеми, и если < 0, то игрок слева и наоборот
ну дак не координату, а одну ось из направляющей ( забыл дописать там ), в итоге можно посчитать, учитывая, что начало оси y слева, значит знак разности и есть показатель положения прицела относительно игрока, кек
 
Назад
Сверху Снизу