Гайд Granade Helper for Indigo

Забаненный
Статус
Оффлайн
Регистрация
28 Мар 2017
Сообщения
66
Реакции[?]
12
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Добрый вечер, сегодня выкладываю гайд Granade Helper Indigo

Качаем
Пожалуйста, авторизуйтесь для просмотра ссылки.

[hide=5]
Закидываем в папку с исходником

Открываем Client.cpp
Вставляем
Код:
#include "../GranadeHelper/CGrenadeAPI.h"
переходим в Esp.cpp
Вставляем
Код:
#include "../../GranadeHelper/CGrenadeAPI.h"
теперь

ниже
Код:
else
        {
            fExplodeC4Timer = 0.f;
            fC4Timer = 0.f;
        }
    }
добавляем:
Код:
Color GrenadeHelper = Color(int(Settings::Esp::GrenadeHelper[0] * 255.f),
        int(Settings::Esp::GrenadeHelper[1] * 255.f),
        int(Settings::Esp::GrenadeHelper[2] * 255.f));

    if (Settings::Esp::helper)
    {
        CBaseEntity* local = (CBaseEntity*)Interfaces::EntityList()->GetClientEntity(Interfaces::Engine()->GetLocalPlayer());

        for (int i = 0; i < cGrenade.GrenadeInfo.size(); i++)
        {
            GrenadeInfo_t info;
            if (!cGrenade.GetInfo(i, &info))
                continue;

            int iGrenadeID = StringToWeapon(info.szWeapon);


            if (!local->GetBaseWeapon())
                continue;

            if (!(local->GetBaseWeapon()->GeteAttributableItem()->GetItemDefinitionIndex2() == iGrenadeID || (iGrenadeID == 46 && local->GetBaseWeapon()->GeteAttributableItem()->GetItemDefinitionIndex2() == 48)))
                continue;

            Vector vecOnScreenOrigin, vecOnScreenAngles;
            int iCenterY, iCenterX;
            Interfaces::Engine()->GetScreenSize(iCenterY, iCenterX);
            iCenterX /= 2;
            iCenterY /= 2;

            float dist = sqrt(pow(local->GetRenderOrigin().x - info.vecOrigin.x, 2) + pow(local->GetRenderOrigin().y - info.vecOrigin.y, 2) + pow(local->GetRenderOrigin().z - info.vecOrigin.z, 2)) * 0.0254f;

            if (dist < 0.5f)
            {
                if (WorldToScreen(info.vecOrigin, vecOnScreenOrigin))
                    g_pRender->DrawWave1(info.vecOrigin, 4, Color::Red());


                Vector vecAngles;
                AngleVectors(info.vecViewangles, vecAngles);
                vecAngles *= 100;
                if (WorldToScreen((Client::g_pPlayers->GetLocal()->m_pEntity->GetEyePosition() + vecAngles), vecAngles))
                    g_pRender->Circle(Vector2D(vecAngles.x, vecAngles.y), 15, 15, Color::Red());
                    g_pRender->DrawWave1(info.vecOrigin, 7, Color(GrenadeHelper));
            ;
                if (info.szName.c_str())
                    g_pRender->Text(iCenterX, iCenterY + 20, false, true, Color::White(), info.szName.c_str());
                if (info.szDescription.c_str())
                    g_pRender->Text(iCenterX, iCenterY, false, true, Color::White(), info.szDescription.c_str());
       
            }
            else
            {
                if (WorldToScreen(info.vecOrigin, vecOnScreenOrigin));

                g_pRender->DrawWave1(info.vecOrigin, 10, Color(GrenadeHelper));
                g_pRender->DrawWave1(info.vecOrigin, 7, Color(GrenadeHelper));
            }
        }
    }

переходим в Setting.cpp
и ниже
Код:
string chams_Color_VTT = CSX::Cvar::LoadCvar(VISUAL_TEXT, CVAR_CHAMS_COLOR_VTT, "124,252,0");
добавляем:
Код:
string GrenadeHelper = CSX::Cvar::LoadCvar(VISUAL_TEXT, CVAR_ESP_COLOR_GrenadeHelper, "255,0,0");
Ниже
Код:
ScanColorFromCvar(chams_Color_VTT.c_str(), Settings::Esp::chams_Color_VTT);
вставляем:
Код:
ScanColorFromCvar(GrenadeHelper.c_str(), Settings::Esp::GrenadeHelper);
ниже
Код:
string esp_Color_VTT =
            to_string(int(Settings::Esp::esp_Color_VTT[0] * 255.f)) + "," +
            to_string(int(Settings::Esp::esp_Color_VTT[1] * 255.f)) + "," +
            to_string(int(Settings::Esp::esp_Color_VTT[2] * 255.f));
добавляем:
Код:
string GrenadeHelper =
to_string(int(Settings::Esp::GrenadeHelper[0] * 255.f)) + "," +
to_string(int(Settings::Esp::GrenadeHelper[1] * 255.f)) + "," +
to_string(int(Settings::Esp::GrenadeHelper[2] * 255.f));
ниже:
Код:
float esp_Color_VTT[3] = { 0.f,0.0f,0.f };
добавляем:
Код:
bool helper = false;
float GrenadeHelper[3] = { 0.f,0.f,0.f };
переходим в setting.h
В namespace Esp:
Добавляем:
Код:
extern bool helper;
extern float GrenadeHelper[3];
#define CVAR_ESP_COLOR_GrenadeHelper "GrenadeHelper"
Теперь в Client.cpp в любом удобном вам месте добавляем
Код:
ImGui::Checkbox(u8"Grenade Helper", &Settings::Esp::helper);
            ImGui::SameLine();
            if (ImGui::Button(u8"Update Map"))
                cGrenade.bUpdateGrenadeInfo(Interfaces::Engine()->GetLevelNameShort());
[/hide]




Enjoy
 
Последнее редактирование:
Забаненный
Статус
Оффлайн
Регистрация
5 Ноя 2017
Сообщения
192
Реакции[?]
91
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
А не проще скразу скачать исход flour-project?)
 
Забаненный
Статус
Оффлайн
Регистрация
28 Мар 2017
Сообщения
66
Реакции[?]
12
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Премиум
Статус
Оффлайн
Регистрация
25 Авг 2017
Сообщения
557
Реакции[?]
220
Поинты[?]
0
̶О̶г̶о̶,̶ ̶н̶е̶у̶ж̶е̶л̶и̶ ̶э̶т̶о̶ ̶т̶о̶т̶ ̶с̶а̶м̶ы̶й̶ ̶г̶р̶е̶н̶е̶й̶д̶ ̶х̶е̶л̶п̶е̶р̶,̶ ̶в̶ ̶к̶о̶т̶о̶р̶о̶м̶ ̶н̶е̶л̶ь̶з̶я̶ ̶п̶о̶м̶е̶н̶я̶т̶ь̶ ̶ц̶в̶е̶т̶а̶ ̶г̶р̶а̶н̶а̶т̶?̶

EDIT: Они вообще не заданы, ексдии
 
Забаненный
Статус
Оффлайн
Регистрация
28 Мар 2017
Сообщения
66
Реакции[?]
12
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
28 Мар 2017
Сообщения
66
Реакции[?]
12
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Что ты "пофиксил"?) Отдельные цвета для каждой гранаты?)))
Это старый код который делал для себя еще с 3.6.1 сейчас использую 4.1 и там фикс есть, не буду же я все сразу выкладывать) постепенно)
 
Забаненный
Статус
Оффлайн
Регистрация
6 Июл 2017
Сообщения
381
Реакции[?]
252
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Круги в которые нужно будет целится будут смещены. Лучше филлбоксом отрисовать.
 
Забаненный
Статус
Оффлайн
Регистрация
28 Мар 2017
Сообщения
66
Реакции[?]
12
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
30 Мар 2015
Сообщения
1,185
Реакции[?]
636
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Да что вы накинулись то? Парень выложил для тех, кто не знал. Свое говно держите при себе в следующий раз, окда?

А по теме: дык это в смефе же есть, да и вообще хайд слишком большой думаю, т.к в пабе все есть
 
Последнее редактирование:
Забаненный
Статус
Оффлайн
Регистрация
28 Мар 2017
Сообщения
66
Реакции[?]
12
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Да что вы накинудись то? Парень выложил для тех, кто не знал. Свое говно держите при себе в следующий раз, окда?

А по теме: дык это в смефе же есть, да и вообще хайд слишком большой думаю, т.к в пабе все есть
ну не проблема изменить) спасибо за то что поддержал, в смефе я не видел это пришлось сомаму добавлять
 
Премиум
Статус
Оффлайн
Регистрация
25 Авг 2017
Сообщения
557
Реакции[?]
220
Поинты[?]
0
Забаненный
Статус
Оффлайн
Регистрация
28 Мар 2017
Сообщения
66
Реакции[?]
12
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забыл в render.cpp
Код:
void CRender::DrawLine(int x1, int y1, int x2, int y2, Color color)
    {
        DWORD dxLineColor = D3DCOLOR_RGBA(color.r(), color.g(), color.b(), color.a());

        D3DTLVERTEX D3DTLV[2] = { 0 };

        CreateVertex(x1, y1, dxLineColor, PD3DTLVERTEX(&D3DTLV), 0);
        CreateVertex(x2, y2, dxLineColor, PD3DTLVERTEX(&D3DTLV), 1);

        SetVertexState();

        m_pDevice->DrawPrimitiveUP(D3DPT_LINELIST, 1, &D3DTLV, sizeof(D3DTLVERTEX));
    }

    void CRender::Line(Vector2D start_pos, Vector2D end_pos, Color col)
    {
        DrawLine(start_pos.x, start_pos.y, end_pos.x, end_pos.y, col);
    }

    void CRender::Circle(Vector2D position, float points, float radius, Color color)
    {
        float step = (float)M_PI * 2.0f / points;

        for (float a = 0; a < (M_PI * 2.0f); a += step)
        {
            Vector2D start(radius * cosf(a) + position.x, radius * sinf(a) + position.y);
            Vector2D end(radius * cosf(a + step) + position.x, radius * sinf(a + step) + position.y);
            Line(start, end, color);
        }
    }
В render.h

Код:
void Line(Vector2D start_pos, Vector2D end_pos, Color col);
        void DrawLine(int x1, int y1, int x2, int y2, Color color);

        void Circle(Vector2D position, float points, float radius, Color color);
в weapon.cpp ниже
Код:
CBaseAttributableItem* CBaseWeapon::GeteAttributableItem()
    {
        return (CBaseAttributableItem*)(DWORD)this;
    }
Вставить
Код:
int& CBaseAttributableItem::GetItemDefinitionIndex2()
    {
        return *(int*)((DWORD)this + Offset::Entity::m_iItemDefinitionIndex);
    }
в weapon.h после
Код:
class CBaseAttributableItem : public IClientEntity
    {
    public:
Вставить
Код:
int&            GetItemDefinitionIndex2();
в esp.cpp в верху добавить
Код:
int StringToWeapon(std::string weapon) {
    if (!strcmp(weapon.c_str(), "smokegrenade"))
        return 45;
    if (!strcmp(weapon.c_str(), "flashbang"))
        return 43;
    if (!strcmp(weapon.c_str(), "incgrenade"))
        return 46; // TODO: гавнокод
}
в render.cpp добавить
Код:
void CRender::DrawWave1(Vector loc, float radius, Color color)
    {
        static float Step = M_PI * 3.0f / 40;
        Vector prev;
        for (float lat = 0; lat <= M_PI * 3.0f; lat += Step)
        {
            float sin1 = sin(lat);
            float cos1 = cos(lat);
            float sin3 = sin(0.0);
            float cos3 = cos(0.0);

            Vector point1;
            point1 = Vector(sin1 * cos3, cos1, sin1 * sin3) * radius;
            Vector point3 = loc;
            Vector Out;
            point3 += point1;

            if (WorldToScreen(point3, Out))
            {
                if (lat > 0.000)
                    DrawLine(prev.x, prev.y, Out.x, Out.y, color);
            }
            prev = Out;
        }
    }
в рендер.н добавить
Код:
void DrawWave1(Vector loc, float radius, Color color);
 
Последнее редактирование:
Забаненный
Статус
Оффлайн
Регистрация
30 Мар 2015
Сообщения
1,185
Реакции[?]
636
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
28 Мар 2017
Сообщения
66
Реакции[?]
12
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
у меня норм, можешь скинуть в ЛС скрин фейлов, что бы мог пофиксить и выложить полный гайд если не сложно
 
Забаненный
Статус
Оффлайн
Регистрация
30 Мар 2015
Сообщения
1,185
Реакции[?]
636
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
28 Мар 2017
Сообщения
66
Реакции[?]
12
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
30 Мар 2015
Сообщения
1,185
Реакции[?]
636
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Новая ава блеять
Забаненный
Статус
Оффлайн
Регистрация
14 Янв 2018
Сообщения
89
Реакции[?]
235
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забыл в render.cpp
Код:
void CRender::DrawLine(int x1, int y1, int x2, int y2, Color color)
    {
        DWORD dxLineColor = D3DCOLOR_RGBA(color.r(), color.g(), color.b(), color.a());

        D3DTLVERTEX D3DTLV[2] = { 0 };

        CreateVertex(x1, y1, dxLineColor, PD3DTLVERTEX(&D3DTLV), 0);
        CreateVertex(x2, y2, dxLineColor, PD3DTLVERTEX(&D3DTLV), 1);

        SetVertexState();

        m_pDevice->DrawPrimitiveUP(D3DPT_LINELIST, 1, &D3DTLV, sizeof(D3DTLVERTEX));
    }

    void CRender::Line(Vector2D start_pos, Vector2D end_pos, Color col)
    {
        DrawLine(start_pos.x, start_pos.y, end_pos.x, end_pos.y, col);
    }

    void CRender::Circle(Vector2D position, float points, float radius, Color color)
    {
        float step = (float)M_PI * 2.0f / points;

        for (float a = 0; a < (M_PI * 2.0f); a += step)
        {
            Vector2D start(radius * cosf(a) + position.x, radius * sinf(a) + position.y);
            Vector2D end(radius * cosf(a + step) + position.x, radius * sinf(a + step) + position.y);
            Line(start, end, color);
        }
    }
В render.h

Код:
void Line(Vector2D start_pos, Vector2D end_pos, Color col);
        void DrawLine(int x1, int y1, int x2, int y2, Color color);

        void Circle(Vector2D position, float points, float radius, Color color);
в weapon.cpp ниже
Код:
CBaseAttributableItem* CBaseWeapon::GeteAttributableItem()
    {
        return (CBaseAttributableItem*)(DWORD)this;
    }
Вставить
Код:
int& CBaseAttributableItem::GetItemDefinitionIndex2()
    {
        return *(int*)((DWORD)this + Offset::Entity::m_iItemDefinitionIndex);
    }
в weapon.h после
Код:
class CBaseAttributableItem : public IClientEntity
    {
    public:
Вставить
Код:
int&            GetItemDefinitionIndex2();
в esp.cpp в верху добавить
Код:
int StringToWeapon(std::string weapon) {
    if (!strcmp(weapon.c_str(), "smokegrenade"))
        return 45;
    if (!strcmp(weapon.c_str(), "flashbang"))
        return 43;
    if (!strcmp(weapon.c_str(), "incgrenade"))
        return 46; // TODO: гавнокод
}
в render.cpp добавить
Код:
void CRender::DrawWave1(Vector loc, float radius, Color color)
    {
        static float Step = M_PI * 3.0f / 40;
        Vector prev;
        for (float lat = 0; lat <= M_PI * 3.0f; lat += Step)
        {
            float sin1 = sin(lat);
            float cos1 = cos(lat);
            float sin3 = sin(0.0);
            float cos3 = cos(0.0);

            Vector point1;
            point1 = Vector(sin1 * cos3, cos1, sin1 * sin3) * radius;
            Vector point3 = loc;
            Vector Out;
            point3 += point1;

            if (WorldToScreen(point3, Out))
            {
                if (lat > 0.000)
                    DrawLine(prev.x, prev.y, Out.x, Out.y, color);
            }
            prev = Out;
        }
    }
в рендер.н добавить
Код:
void DrawWave1(Vector loc, float radius, Color color);
при комплете выдает функция-член уже определена или объявлена. Можешь помочь, а то я чайник
 
Сверху Снизу