Приватные читы. Создание читов. Рынок аккаунтов
ПУБГ читы, EFT читы, КС ГО читы.
Показано с 1 по 10 из 10

[HLRTeam] Программирование под HL1 на C++. Урок 2-ой. ESP Box + ESP Dot

| Создание читов гайды
  1. #1
    Проверенные
    Регистрация
    04.02.2011
    Сообщений
    2,226
    Количество спасиб
    1,714
    Количество спасиб
    1,714
    Репутация:   262  
    Программирование под HL1 на C++. Урок 2-ой. ESP Box + ESP Dot

    Решил выложить урок наэтот форум так как тот засрали мамоебы, а я это не очень люблю.

    Ну не суть. Предполагалось две части, но потом я решил просто объединить их воедино.

    esp.h:


    [code=C++]static void DrawBox(int iIndex);[/code]


    esp.cpp:




    [code=C++]void esp_s:rawBox(int iIndex)
    {
    if(cvar.esp_dm->value==0&&g_PlayerTeam[iIndex]==g_Local.iTeam)return;


    int r=255, g=0, b=255;

    if(g_Player[iIndex].bVisible){g = 0;}
    if(!g_Player[iIndex].bVisible){g = 255;}


    if(g_PlayerTeam[iIndex] == 1) { r = 255, b = 0; }
    if(g_PlayerTeam[iIndex] == 2) { r = 0, b = 255; }




    float flDrawPos[2];
    if(bCalcScreen(g_Player[iIndex].vOrigin,flDrawPos))
    {
    int x = (int)flDrawPos[0], y = (int)flDrawPos[1];


    float uppt[]={g_Player[iIndex].vOrigin.x-g_Local.vViewOrg.x,g_Player[iIndex].vOrigin.y-g_Local.vViewOrg.y,g_Player[iIndex].vOrigin.z-g_Local.vViewOrg.z};
    float l=sqrt(VectorLengthSquared(uppt));
    l=max(100,l);
    const float pw=16.0f;
    const float ph=36.0f;
    int bw=(30.0f*pw)/l*15;
    int bh=(30.0f*ph)/l*15;
    int bx=x-bw;
    int by=y-((30.0f*(ph+10))/l*15);
    g_Drawing.DrawBox(bx,by,bw*2,bh*2,2,r,g,b,255);
    }
    }
    [/code]


    HUD_Redraw:


    [code=C++]if(cvar.esp->value != 0 && g_Aimbot.bIsValidEnt(iIndex))
    {
    if(cvar.esp_dot->value != 0) DrawDot(iIndex);
    if(cvar.esp_box->value != 0) DrawBox(iIndex);
    }




    locals.h -> local_s : Vector vViewOrg;
    [/code]


    Client.cpp:

    [code=C++]V_CalcRefdef: VectorCopy(pparams->vieworg,g_Local.vViewOrg);[/code]

    ESP Dot

    [code=C++]
    class esp_s //создаем класс под названием esp_s
    {
    public: //эти элементы класса можно будет изменять
    static bool bCalcScreen(float *pflOrigin,float *pflVecScreen); //Считаем положение на экране и проверяем находится ли враг в видимости


    static void DrawDot(int iIndex); //Будем рисовать точку на врагах
    static void HUD_Redraw(int iIndex); //Тут мы будем вызывать все ESP(виды) , которые мы сделаем
    };
    extern esp_s g_Esp;
    [/code]


    [code=C++]esp.cpp:


    #include "esp.h"
    #include "cVars\cvars.h"
    #include "settings.h"
    #include "locals.h"
    #include "aimbot.h"
    #include "drawing.h"


    esp_s g_Esp;


    bool esp_s::bCalcScreen(float *pflOrigin,float *pflVecScreen) //world to screen function
    {
    int iResult = g_Engine.pTriAPI->WorldToScreen( pflOrigin, pflVecScreen );


    if( pflVecScreen[0] < 1 && pflVecScreen[1] < 1 && pflVecScreen[0] > -1 && pflVecScreen[1] > -1 && !iResult )
    {
    pflVecScreen[0] = pflVecScreen[0] * ( g_Screen.iWidth / 2 ) + ( g_Screen.iWidth / 2 );
    pflVecScreen[1] = -pflVecScreen[1] * ( g_Screen.iHeight / 2 ) + ( g_Screen.iHeight / 2 );
    return true;
    }
    return false;
    }


    void esp_s:rawDot(int iIndex)//рисуем точку
    {
    if(cvar.esp_dm->value==0&&g_PlayerTeam[iIndex]==g_Local.iTeam)return; //проверка на комманду


    int r=255, g=0, b=255;


    if(g_Player[iIndex].bVisible){g = 0;} //если мы видим врага , то зеленый цвет = 0
    if(!g_Player[iIndex].bVisible){g = 255;} //если же не видим , то зеленый цвет = 255


    if(g_PlayerTeam[iIndex] == 1) { r = 255, b = 0; } //Террористы красные
    if(g_PlayerTeam[iIndex] == 2) { r = 0, b = 255; } //Контр-террористы синие

    float flDrawPos[2];
    if(bCalcScreen(g_Player[iIndex].vBone[(int)cvar.esp_dot_spot->value],flDrawPos))//высчитываем точку на экране с помощью Bone (место отрисоввки
    {
    int x = (int)flDrawPos[0], y = (int)flDrawPos[1];

    g_Drawing.FillArea(x-1,y+1,2,2,r,g,b,255);//вот и точка , где цифры 2 - можно заменить на свое
    }
    }


    void esp_s::HUD_Redraw(int iIndex)
    {
    if(cvar.esp->value != 0 && g_Aimbot.bIsValidEnt(iIndex)) //включен ли есп и валидный ли игрок
    {
    if(cvar.esp_dot->value != 0) DrawDot(iIndex);//если esp_dot включен - рисуем точку
    }
    } [/code]


    Создаем и регестрируем квары самостоятельно. В client.cpp где-то сверху:


    [code=C++]#include "esp.h"[/code]




    В HUD_Redraw в цикле с игроками где-то ниже всего (но в цикле):


    [code=C++]g_Esp.HUD_Redraw(i);[/code]

  2. 2 пользователя(ей) сказали cпасибо:


  3. #2
    Banned
    Регистрация
    04.11.2013
    Сообщений
    919
    Количество спасиб
    57
    Количество спасиб
    57
    Нарушения
    0/1 (1000)
    Репутация:   4  
    Хорошие уроки=)

  4. Пользователь сказал cпасибо:


  5. #3
    Banned
    Регистрация
    27.05.2012
    Сообщений
    554
    Количество спасиб
    149
    Количество спасиб
    149
    Нарушения
    0/1 (1000)
    Репутация:   16  
    Выкладывай сразу исходник), и мб стрейф хак или стабилизатор

  6. #4
    Проверенные
    Регистрация
    04.02.2011
    Сообщений
    2,226
    Количество спасиб
    1,714
    Количество спасиб
    1,714
    Репутация:   262  
    Цитата Сообщение от Vitalik447109 Посмотреть сообщение
    Выкладывай сразу исходник), и мб стрейф хак или стабилизатор
    Причем тут "стрейф хак или стабилизатор" если этот урок по есп?

  7. #5
    Banned
    Регистрация
    27.05.2012
    Сообщений
    554
    Количество спасиб
    149
    Количество спасиб
    149
    Нарушения
    0/1 (1000)
    Репутация:   16  
    Цитата Сообщение от PRONAX Посмотреть сообщение
    Причем тут "стрейф хак или стабилизатор" если этот урок по есп?
    ну урок по ним

  8. #6
    Проверенные Аватар для poiuytrew
    Регистрация
    07.03.2012
    Сообщений
    11,053
    Количество спасиб
    4,149
    Количество спасиб
    4,149
    Репутация:   522  
    неплохо было бы добавить прозрачность на точки и квадраты

  9. #7
    Banned
    Регистрация
    30.09.2012
    Адрес
    127.0.0.1
    Инфо
    Сношу ИНТЕРНЕТ
    Сообщений
    1,709
    Количество спасиб
    199
    Количество спасиб
    199
    Нарушения
    0/1 (1000)
    Репутация:   73  
    Скрытый текст, необходимо выполнение следующих условий: [hide=PRONAX]
    Быть пользователем с ником PRONAX

  10. #8
    Проверенные
    Регистрация
    04.02.2011
    Сообщений
    2,226
    Количество спасиб
    1,714
    Количество спасиб
    1,714
    Репутация:   262  
    Цитата Сообщение от poiuytrew Посмотреть сообщение
    неплохо было бы добавить прозрачность на точки и квадраты
    Такие "мониторы" будьте добры сами "прихуяривать"
    Цитата Сообщение от kAkwH Посмотреть сообщение
    [-private-data-6106062-0-]
    Скрытый текст, необходимо выполнение следующих условий: [hide=kAkwH]
    Быть пользователем с ником kAkwH

    пысы Еще вот не пойму почему теги перестали работать.
    Последний раз редактировалось PRONAX; 19.01.2014 в 14:14.

  11. #9
    Banned
    Регистрация
    06.11.2013
    Сообщений
    235
    Количество спасиб
    9
    Количество спасиб
    9
    Нарушения
    0/1 (1000)
    Репутация:   -1  
    Цитата Сообщение от PRONAX Посмотреть сообщение
    Такие "мониторы" будьте добры сами "прихуяривать"

    [-private-data-6106432-0-]
    пысы Еще вот не пойму почему теги перестали работать.
    давно)

  12. #10
    Проверенные
    Регистрация
    04.02.2011
    Сообщений
    2,226
    Количество спасиб
    1,714
    Количество спасиб
    1,714
    Репутация:   262  
    Цитата Сообщение от versusbattle Посмотреть сообщение
    давно)
    Это очень меня печалит.

Реклама на сайте
Abuse here: [email protected] Жалобы слать сюда: [email protected]
При использовании материалов сайта указание источника обязательно.
Форум всегда нуждается в развитии приоритетных разделов.
http://pvpru_com.livejournal.com/ - Аварийный блог
RSS
Ошибки/неудобства мобильной версии сюда.