Исходник auto align

Начинающий
Статус
Оффлайн
Регистрация
14 Сен 2022
Сообщения
3
Реакции[?]
2
Поинты[?]
0
Я подумал и решил слить, пусть будет в паблике :)
Пожалуйста, авторизуйтесь для просмотра ссылки.


C++:
void Misc::autohug(UserCmd* cmd) noexcept
{
    if (!config->misc.autohug)
        return;

    if (!localPlayer || !localPlayer->isAlive() || (localPlayer->flags() & 1))
        return;

    if (const auto mt = localPlayer->moveType(); mt == MoveType::LADDER || mt == MoveType::NOCLIP)
        return;

    Vector wishdir;
    bool done = false;

    if ((cmd->buttons & UserCmd::IN_FORWARD) && !(cmd->buttons & UserCmd::IN_BACK) && !(cmd->buttons & UserCmd::IN_MOVELEFT) && !(cmd->buttons & UserCmd::IN_MOVERIGHT)) {
        wishdir = { std::cos(degreesToRadians(cmd->viewangles.y)) * 17.f, std::sin(degreesToRadians(cmd->viewangles.y)) * 17.f, 0.f };
        done = true;
    }
    if ((cmd->buttons & UserCmd::IN_BACK) && !(cmd->buttons & UserCmd::IN_FORWARD) && !(cmd->buttons & UserCmd::IN_MOVELEFT) && !(cmd->buttons & UserCmd::IN_MOVERIGHT)) {
        wishdir = { std::cos(degreesToRadians(cmd->viewangles.y + 180.f)) * 17.f, std::sin(degreesToRadians(cmd->viewangles.y + 180.f)) * 17.f, 0.f };
        done = true;
    }
    if ((cmd->buttons & UserCmd::IN_MOVELEFT) && !(cmd->buttons & UserCmd::IN_BACK) && !(cmd->buttons & UserCmd::IN_FORWARD) && !(cmd->buttons & UserCmd::IN_MOVERIGHT)) {
        wishdir = { std::cos(degreesToRadians(cmd->viewangles.y + 90.f)) * 17.f, std::sin(degreesToRadians(cmd->viewangles.y + 90.f)) * 17.f, 0.f };
        done = true;
    }
    if ((cmd->buttons & UserCmd::IN_MOVERIGHT) && !(cmd->buttons & UserCmd::IN_BACK) && !(cmd->buttons & UserCmd::IN_MOVELEFT) && !(cmd->buttons & UserCmd::IN_FORWARD)) {
        wishdir = { std::cos(degreesToRadians(cmd->viewangles.y - 90.f)) * 17.f, std::sin(degreesToRadians(cmd->viewangles.y - 90.f)) * 17.f, 0.f };
        done = true;
    }

    if (!done)
        return;

    const auto startPos = localPlayer->getAbsOrigin();
    const auto endPos = startPos + wishdir;

    Trace trace;
    interfaces->engineTrace->traceRay({ startPos, endPos }, MASK_PLAYERSOLID, localPlayer.get(), trace);
    if ((trace.fraction < 1.f) && (trace.plane.normal.z == 0.f)) {
        Vector Angles{ trace.plane.normal.x * -16.005f, trace.plane.normal.y * -16.005f, 0.f };
        const auto endPos2 = startPos + Angles;
        Trace trace2;
        interfaces->engineTrace->traceRay({ startPos, endPos2 }, MASK_PLAYERSOLID, localPlayer.get(), trace2);
        if (trace.plane != trace2.plane) {
            Vector to_wall = Angles.toAngle();
            float mVel = hypotf(localPlayer->velocity().x, localPlayer->velocity().y);
            float ideal = radiansToDegrees(atanf(28.33f / mVel));
            Vector dvelo = localPlayer->velocity();
            dvelo.z = 0.f;
            Vector velo_angle = dvelo.toAngle();
            Vector delta = velo_angle - to_wall;
            delta.normalize();
            if (delta.y >= 0.f)
                to_wall.y += ideal;
            else
                to_wall.y -= ideal;
            float rotation = degreesToRadians(to_wall.y - cmd->viewangles.y);
            float cos_rot = cos(rotation);
            float sin_rot = sin(rotation);

            float forwardmove = cos_rot * 450.f;
            float sidemove = -sin_rot * 450.f;
            cmd->forwardmove = forwardmove;
            cmd->sidemove = sidemove;
        }
    }
}
если будут вопросы, пишите сюда - Акиро
Пожалуйста, авторизуйтесь для просмотра ссылки.

если хотите, могу слить что нибудь еще :3
 
Тьомчик
Участник
Статус
Оффлайн
Регистрация
30 Июн 2020
Сообщения
704
Реакции[?]
150
Поинты[?]
58K
напиши s.o xoden это код создателя инкабаниума, а не твой пастер
 
Начинающий
Статус
Оффлайн
Регистрация
8 Июн 2019
Сообщения
174
Реакции[?]
22
Поинты[?]
3K
Я подумал и решил слить, пусть будет в паблике :)
Пожалуйста, авторизуйтесь для просмотра ссылки.


C++:
void Misc::autohug(UserCmd* cmd) noexcept
{
    if (!config->misc.autohug)
        return;

    if (!localPlayer || !localPlayer->isAlive() || (localPlayer->flags() & 1))
        return;

    if (const auto mt = localPlayer->moveType(); mt == MoveType::LADDER || mt == MoveType::NOCLIP)
        return;

    Vector wishdir;
    bool done = false;

    if ((cmd->buttons & UserCmd::IN_FORWARD) && !(cmd->buttons & UserCmd::IN_BACK) && !(cmd->buttons & UserCmd::IN_MOVELEFT) && !(cmd->buttons & UserCmd::IN_MOVERIGHT)) {
        wishdir = { std::cos(degreesToRadians(cmd->viewangles.y)) * 17.f, std::sin(degreesToRadians(cmd->viewangles.y)) * 17.f, 0.f };
        done = true;
    }
    if ((cmd->buttons & UserCmd::IN_BACK) && !(cmd->buttons & UserCmd::IN_FORWARD) && !(cmd->buttons & UserCmd::IN_MOVELEFT) && !(cmd->buttons & UserCmd::IN_MOVERIGHT)) {
        wishdir = { std::cos(degreesToRadians(cmd->viewangles.y + 180.f)) * 17.f, std::sin(degreesToRadians(cmd->viewangles.y + 180.f)) * 17.f, 0.f };
        done = true;
    }
    if ((cmd->buttons & UserCmd::IN_MOVELEFT) && !(cmd->buttons & UserCmd::IN_BACK) && !(cmd->buttons & UserCmd::IN_FORWARD) && !(cmd->buttons & UserCmd::IN_MOVERIGHT)) {
        wishdir = { std::cos(degreesToRadians(cmd->viewangles.y + 90.f)) * 17.f, std::sin(degreesToRadians(cmd->viewangles.y + 90.f)) * 17.f, 0.f };
        done = true;
    }
    if ((cmd->buttons & UserCmd::IN_MOVERIGHT) && !(cmd->buttons & UserCmd::IN_BACK) && !(cmd->buttons & UserCmd::IN_MOVELEFT) && !(cmd->buttons & UserCmd::IN_FORWARD)) {
        wishdir = { std::cos(degreesToRadians(cmd->viewangles.y - 90.f)) * 17.f, std::sin(degreesToRadians(cmd->viewangles.y - 90.f)) * 17.f, 0.f };
        done = true;
    }

    if (!done)
        return;

    const auto startPos = localPlayer->getAbsOrigin();
    const auto endPos = startPos + wishdir;

    Trace trace;
    interfaces->engineTrace->traceRay({ startPos, endPos }, MASK_PLAYERSOLID, localPlayer.get(), trace);
    if ((trace.fraction < 1.f) && (trace.plane.normal.z == 0.f)) {
        Vector Angles{ trace.plane.normal.x * -16.005f, trace.plane.normal.y * -16.005f, 0.f };
        const auto endPos2 = startPos + Angles;
        Trace trace2;
        interfaces->engineTrace->traceRay({ startPos, endPos2 }, MASK_PLAYERSOLID, localPlayer.get(), trace2);
        if (trace.plane != trace2.plane) {
            Vector to_wall = Angles.toAngle();
            float mVel = hypotf(localPlayer->velocity().x, localPlayer->velocity().y);
            float ideal = radiansToDegrees(atanf(28.33f / mVel));
            Vector dvelo = localPlayer->velocity();
            dvelo.z = 0.f;
            Vector velo_angle = dvelo.toAngle();
            Vector delta = velo_angle - to_wall;
            delta.normalize();
            if (delta.y >= 0.f)
                to_wall.y += ideal;
            else
                to_wall.y -= ideal;
            float rotation = degreesToRadians(to_wall.y - cmd->viewangles.y);
            float cos_rot = cos(rotation);
            float sin_rot = sin(rotation);

            float forwardmove = cos_rot * 450.f;
            float sidemove = -sin_rot * 450.f;
            cmd->forwardmove = forwardmove;
            cmd->sidemove = sidemove;
        }
    }
}
если будут вопросы, пишите сюда - Акиро
Пожалуйста, авторизуйтесь для просмотра ссылки.

если хотите, могу слить что нибудь еще :3
another shit post scammed from uc funny the fact that ur taking the credits for yourself knowing that u didnt even changed a value, if anyone is thinking about using this.. XD i feel bad thats the worst auto align i have ever seen
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
14 Сен 2022
Сообщения
3
Реакции[?]
2
Поинты[?]
0
напиши s.o xoden это код создателя инкабаниума, а не твой пастер
Что? Этот код мне отправил друг, и я не знаю кто такой xoden :D и почему я пастер?
another shit post scammed from uc funny the fact that ur taking the credits for yourself knowing that u didnt even changed a value, if anyone is thinking about using this.. XD i feel bad thats the worst auto align i have ever seen
Можно ссылку? И почему это плохой автоалигн? Покажи лучше :0
 
Пользователь
Статус
Оффлайн
Регистрация
3 Янв 2019
Сообщения
370
Реакции[?]
52
Поинты[?]
1K
бля такой кринжик словил с видоса пиздец аххАХАХ
кларити у тебя идею взяли сто проц бро
 
Забаненный
Статус
Оффлайн
Регистрация
23 Авг 2022
Сообщения
11
Реакции[?]
5
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
good
 
Начинающий
Статус
Оффлайн
Регистрация
8 Июн 2019
Сообщения
174
Реакции[?]
22
Поинты[?]
3K
Что? Этот код мне отправил друг, и я не знаю кто такой xoden :D и почему я пастер?

Можно ссылку? И почему это плохой автоалигн? Покажи лучше :0
post got deleted after a few hours how am i suposed to show the link but i can show somethign else1663242464946.png
now tell me that u created this, why is it a bad align? XD dude everyone can already see the quality of this code by how it looks, ill not tell you everything thats wrong but 1663242572561.png
are you sure thats how u wanna do it? xd
and i doubt that the autoaling ur showing is this one tbh
 
Начинающий
Статус
Оффлайн
Регистрация
14 Сен 2022
Сообщения
3
Реакции[?]
2
Поинты[?]
0
post got deleted after a few hours how am i suposed to show the link but i can show somethign elseПосмотреть вложение 221068
now tell me that u created this, why is it a bad align? XD dude everyone can already see the quality of this code by how it looks, ill not tell you everything thats wrong but Посмотреть вложение 221069
are you sure thats how u wanna do it? xd
and i doubt that the autoaling ur showing is this one tbh
Что? Я где то говорил что код мой? Я ещё раз повторяю, что код мне отправил мой друг. Откуда мне знать откуда он? Да и если ты код, так скажи чем он плох / как сделать лучше.
 
Начинающий
Статус
Оффлайн
Регистрация
8 Июн 2019
Сообщения
174
Реакции[?]
22
Поинты[?]
3K
Что? Я где то говорил что код мой? Я ещё раз повторяю, что код мне отправил мой друг. Откуда мне знать откуда он? Да и если ты код, так скажи чем он плох
youre basically telling thats was made by you, i dont see any credits to "your friend" or even a "that was made by a friend" after the code or before whatever

как сделать лучше.
just trace the wall angle, get trace result, get plane from the trace result, that will tell you the normal data and the wall angles you can do it efficiently by using
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Забаненный
Статус
Оффлайн
Регистрация
29 Мар 2022
Сообщения
21
Реакции[?]
1
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Сверху Снизу