[C++] [mod_sa] AntTweakBar [Часть 1] - Форум Cheat-Master.ru
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: Sanoxxx, Alowir  
[C++] [mod_sa] AntTweakBar [Часть 1]
WarMix Дата: Воскресенье, 13.01.2013, 16:48 | Сообщение # 1
Бывалый
Сообщений: 359
Статус: Offline


Здравствуйте уважаемые форумчане. Сегодня я хотел бы рассказать вам как вшить AntTweakBar в собейт.


Введение:

AntTweakBar - это С/С++ библиотека, которая позволяет быстро встроить графический интерфейс в ваши OpenGL или DirectX приложения.

Подготовка:

1) Скачайте этот архив, и распакуйте его в любую удобную для вас папку
2) Папку "AntTweakBar" закиньте в исходник вашего собейта, а точнее в папку "src". Туда же ( в папку "src" ) закиньте два файла "new_menu.cpp" и "new_menu.h".

Основная часть:

1) Откройте ваш проект, затем два раза щелкните по "cheat.cpp"



В "cheat.cpp" найдите строчку:

Код
// menus are good


Внизу вы видите вот такую запись:

Код
// menus are good
   menu_run();


Удалите строчку:

Код
menu_run();


И заместо неё добавьте:

Код
if(set.use_old_menu)
     menu_run();
    else
     runNewMenu();


2) Теперь два раза щелкните по "ini.cpp"

Найдите строчку:

Код
/* menu */


И после неё добавьте:

Код
    if ( (ent = ini_register_entry("use_old_menu", TYPE_BOOL)) != NULL )
    ini_register_data( ent, &set.use_old_menu, "true" );
   if ( (ent = ini_register_entry("new_menu_populator_time", TYPE_INT)) != NULL )
       ini_register_data( ent, &set.new_menu_populator_time, "1000" );


3) Откройте "ini.h"

Код
[i][b]И найдите вот такую строчку:[/b][/i]


Код
    int      key_menu;


Перед ней добавьте:

Код
    int                     use_old_menu;
   int      new_menu_populator_time;


4) Два раза щелкните по "keyhook.cpp"

Найдите там вот такую строчку:

Код
goto wnd_proc_original;


После неё добавьте:

Код
if(cheat_state->_generic.menu && !set.use_old_menu)
   {
    if(!gta_menu_active())
    {
     if(TwEventWin(wnd, umsg, wparam, lparam))
      return 0;
    }
   }


Теперь найдите вот такие строки:

Код
vkey == set.key_menu_select
      ) )
     {
      return 0;
     }

    }
    break;
   }


И между двумя закрытыми скобками:

Код
    }

    }


Добавьте:

Код
if(cheat_state->_generic.menu && vkey == VK_ESCAPE && !set.use_old_menu)
     {
      cheat_state->_generic.menu = 0;
      toggleCursor(false);
      return 0;
     }


Должна получится вот такая запись:

Код
||  vkey == set.key_menu_select
      ) )
     {
      return 0;
     }

    if(cheat_state->_generic.menu && vkey == VK_ESCAPE && !set.use_old_menu)
     {
      cheat_state->_generic.menu = 0;
      toggleCursor(false);
      return 0;
     }

    }
    break;
   }
wnd_proc_original:
   return CallWindowProc( orig_wndproc, wnd, umsg, wparam, lparam );
}


5) Найдите и откройте "main.cpp"

Найдите вот такие строки:

Код
if ( g_flLogChatboxAll != NULL )
     {
      fclose( g_flLogChatboxAll );
      g_flLogChatboxAll = NULL;
     }
    }
       
    break;
   }

   return true;
}


Затем, после двух закрытых скобок добавьте вот такие строки:

Код
if(!set.use_old_menu)
     TwTerminate();


Должна получиться вот такая запись:

Код
    g_flLogChatboxAll = NULL;
     }
    }

    if(!set.use_old_menu)
     TwTerminate();
       
    break;
   }

   return true;
}


6) Щелкните два раза по "main.h"

Найдите вот такую строку:

Код
#include "mutex.h"


И после неё добавьте следующие:

Код
// AntTweakBar includes
#include "AntTweakBar\AntTweakBar.h"
#include "new_menu.h"


7) Щелкните два раза по "proxyIDirect3D9.cpp"

Найдите вот такую строку:

Код
//Log("proxyIDirect3D9 destructor called.");


И после неё добавьте:

Код
if(!set.use_old_menu)
   {
    TwWindowSize(0,0);
    TwTerminate();
   }


8) Откройте "proxyIDirect3DDevice9.cpp"

Найдите строчку:

Код
render->Invalidate();


И после неё добавьте:

Код
// new menu
   if(!set.use_old_menu)
   {
    TwWindowSize(0, 0);
   }


Теперь найдите вот такие строки:

Код
// load death texture
LoadSpriteTexture();


И после них добавьте:

Код
    // new menu
if ( !set.use_old_menu )
   {
    TwWindowSize(pPresentationParameters->BackBufferWidth, pPresentationParameters->BackBufferHeight);
   }


Найдите строчку:

Код
set.window_mode = ( g_RsGlobal->ps->fullscreen == 0 );


И добавьте после неё:

Код
// update the new menu
if ( !set.use_old_menu )
   {
    TwWindowSize(pPresentationParameters->BackBufferWidth, pPresentationParameters->BackBufferHeight);
   }


Ищем строчку:

Код
*(uint8_t *)0xBAB233 = gta_money_hud->alpha;


И после него добавляем:

Код
// AntTweakBar
if (!set.use_old_menu)
     {
      TwInit(TW_DIRECT3D9, origIDirect3DDevice9);
      TwWindowSize(pPresentParam.BackBufferWidth, pPresentParam.BackBufferHeight);
     
      twBar_Main = TwNewBar("mod_sa", 0);
     
      twBar_SPCheats = TwNewBar("Cheats", 1);
      twBar_SPCarUpgrades = TwNewBar("Vehicle_Upgrades", 1);
      twBar_SPCarColorPJ = TwNewBar("Vehicle_ColorPJs", 1);
      twBar_SPWeapons = TwNewBar("Weapons", 1);
      twBar_SPVehicles = TwNewBar("Vehicles", 1);
      twBar_SPTeleports = TwNewBar("Teleports", 1);
      twBar_SPMisc = TwNewBar("GTA_Misc", 1);
      twBar_SPPatches = TwNewBar("GTA_Patches", 1);
     
      twBar_SAMPPlayers = TwNewBar("Players", 1);
      twBar_SAMPFavServers = TwNewBar("Favorite_servers", 1);
      twBar_SAMPMisc = TwNewBar("SA:MP_Misc", 1);
      twBar_SAMPObjects = TwNewBar("SA:MP_Objects", 1);
      twBar_SAMPPickups = TwNewBar("SA:MP_Pickups", 1);
      twBar_SAMPPatches = TwNewBar("SA:MP_Patches", 1);
     }


Далее ищем:

Код
RenderMap();


После этой строчки добавляем следующие:

Код
  // render menus
     if ( set.use_old_menu )
     {
      if ( cheat_state->_generic.menu )
      {
       RenderMenu();
      }
     }
     else
     {
      static int menuinit;
      if ( cheat_state->_generic.menu && !gta_menu_active() && menuinit > 200 )
      {
       TwDraw();
      }
      else if ( menuinit < 200 && pPedSelf )
      {
       menuinit++;
      }
      else if ( menuinit == 200 )
      {
       initializeBarsMenu();
       menuinit++;
      }
     }


• Мой ВК: vk.com/cm.calipso
• Я ничего не продаю и не покупаю
• В скайпе ни каких сделок
не провожу

• При добавлении указывайте причину
• Помогаю новичкам в освоении


Weazzy Дата: Воскресенье, 13.01.2013, 19:28 | Сообщение # 2
Визи
Сообщений: 882
Статус: Offline
Опробую , а так респект тебе

Я вернулся
xxuxxuxx Дата: Воскресенье, 13.01.2013, 19:46 | Сообщение # 3
Новичок
Сообщений: 8
Статус: Offline
Поклон Calipso.Вообще красава wink .Оказывается у меня не отрисовывалось менню из-за ошибки в new_menu.cpp ,т.к. я и предпологал.Просто скачал твой файл,заменил.Откомпилировал и запустил...о чудо работает.Вобще накостячил я только в нев меню.Остальное всё было ок.Урок даже не читал=)Как знал...Делал по сорцам в code.google.ru smile Ещё раз спасибо...P.S. смортрю и удивляюсь.репа растёта у тебя 6+/сек.

Сообщение отредактировал xxuxxuxx - Воскресенье, 13.01.2013, 19:46
Cortez Дата: Воскресенье, 13.01.2013, 19:52 | Сообщение # 4
Боец
Сообщений: 136
Статус: Offline
Твоя темка мне даже очень помогла. smile
testing Дата: Воскресенье, 13.01.2013, 21:17 | Сообщение # 5
Боец
Сообщений: 71
Статус: Offline
Может кто мне кинуть исходник готовый плиз я уже 5 раз делаю открываю проект и у меня выходит
Один или несколько проектов были загружены не правельно, плиз скиньте


Я не набивал пост, я просто люблю много писать !
xxuxxuxx Дата: Воскресенье, 13.01.2013, 22:03 | Сообщение # 6
Новичок
Сообщений: 8
Статус: Offline
Если кому нужны чистые исходники 0.3e от Голубя(bartekDVD raksamp+FYP) с AnttweakBar'ом.Выложу :)Пишите в лс.
testing Дата: Воскресенье, 13.01.2013, 22:32 | Сообщение # 7
Боец
Сообщений: 71
Статус: Offline
xxuxxuxx, Выкладывай !

Я не набивал пост, я просто люблю много писать !
Rezak_True Дата: Воскресенье, 13.01.2013, 22:36 | Сообщение # 8
Боец
Сообщений: 156
Статус: Offline
xxuxxuxx, выложы плз.

Игла в яйце - Яйцо в Утке - Утка в Зайце - Заяц в шоке:D
xxuxxuxx Дата: Воскресенье, 13.01.2013, 22:47 | Сообщение # 9
Новичок
Сообщений: 8
Статус: Offline
1.Эти файлы narod.ru/disk/65436478001.e2696648b7fd90dc14e1ed94e27ee1b4/AnttweakBar в sobeit.zip.html из архива нужно скопировать в папку src
Исходника:
полный перевод от FYP и raknet от batekdvd,
Голубь добавил пропущенный пакет - RPC_SpawnPlayer (raksamp.cpp)
Всё структуры переведены + raknet
http://rghost.ru/41388946
Распоковать в отдельную папку.

После открыть проект:

mod_sa_VS2010.vcxproj
откомпилировать и в папку bin будет готовый файл d3d9.dll


Сообщение отредактировал xxuxxuxx - Воскресенье, 13.01.2013, 22:53
Rezak_True Дата: Воскресенье, 13.01.2013, 23:09 | Сообщение # 10
Боец
Сообщений: 156
Статус: Offline
xxuxxuxx, каряво сделано , твик бар не воспроизводится

1>new_menu.cpp(1274): warning C4551: в вызове функции отсутствует список аргументов


Игла в яйце - Яйцо в Утке - Утка в Зайце - Заяц в шоке:D
xxuxxuxx Дата: Воскресенье, 13.01.2013, 23:39 | Сообщение # 11
Новичок
Сообщений: 8
Статус: Offline
wink Блин выложишь ещё и скажут дурак biggrin это warning.Можешь не придавать этому значение.И ещё ты его хоть включил???? biggrin Новый стиль меню???В mod_sa.ini пропиши use_old_menu = false
new_menu_populator_time = 1000 и зайди в игру,жми f11 wink .Я выложил файлы чисто для ленивых.Сtrl+C-->>Ctrl+V
iMaddy Дата: Воскресенье, 13.01.2013, 23:44 | Сообщение # 12
Cheat-Master
Сообщений: 2855
Статус: Offline
Где мои 13 девственниц за помощь ?


Вопросами по сайту и так же игровому рынку (развод, невалидные товары, добавление в ЧС, проведение сделок)
не занимаюсь



_MVP_ Дата: Понедельник, 14.01.2013, 00:20 | Сообщение # 13
Боец
Сообщений: 54
Статус: Offline
Цитата (testing)
testing

гвн нврн гнида
testing Дата: Понедельник, 14.01.2013, 13:45 | Сообщение # 14
Боец
Сообщений: 71
Статус: Offline
xxuxxuxx, У тя просто исходник голубя

Я не набивал пост, я просто люблю много писать !
login309 Дата: Понедельник, 02.06.2014, 17:13 | Сообщение # 15
Новичок
Сообщений: 8
Статус: Offline
Ссылка битая
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:
Статистика Форума
Лучшие пользователи
Admin [39113]

GеNius [7210]

[CM]Russel [5557]

kenlo763 [4952]

[CM]AGRESSOR [4639]

Snake_Firm [4452]

Сэс [4416]

Artem_Buero [4223]

[CM]Durman [3204]

[CM]Рафаэль [3080]

iMaddy [2855]

sky_Woker [2854]

getrekt [2745]

Новые пользователи
billienq1 [01:47]

staciah1 [01:15]

maksmovictimofej [00:18]

jamiedv6 [21:25]

billieds7 [20:51]

aprilez9 [15:57]

am9350450 [14:36]

dcvfre [11:04]

Sheroz [10:38]

dominiquevp60 [08:59]

derrickuy11 [05:48]

leannaaw60 [04:45]

nonaxn11 [23:52]