Здравствуйте. В этом уроке я расскажу как сделать в собейте с AntTweakBar функцию отправки фейковой смски (кто не знает, смску видно только вам). Сейчас толку от этой функции на самп-рп мало, так как раздел с жалобами Администрация самп-рп прикрыла, но все же, кому-то может пригодится. Приступим.
Открываем samp.cpp и в конец добавляем:
Это у нас функция для вывода в чат цветного текста. Теперь ее нужно объявить. В конец samp.h добавляем:
Теперь можно приступить к созданию меню для отправки фейковой смс. Открываем файл new_menu.h и ищем в нем extern TwBar *twBar_Main; После добавляем:
Теперь в файле new_menu.cpp находим TwBar *twBar_Main; и после него добавляем:
Дальше находим
И перед ним вставляем:
Теперь, если у вас в собейте, уже есть свое меню, то просто, чуть ниже него добавляем:
Если же у вас нету своего раздела, то ищем строчку:
И перед ней вставляем тот же код:
Дальше, спускаемся вниз и находим вот такие строчки:
Перед ними вставляем:
Теперь находим:
И после вставляем:
И теперь открываем файл proxyIDirect3DDevice9.cpp Находим там строчку:
И перед ней вставляем:
Это мой первый урок по C++, а так же это первая написанная мною функция для собейта, так что строго не судите, а лучше указывайте на ошибки :)
P.S. В меню, в поле для ввода текста смс, вводятся крякозябры, но в смс текст выводится правильно.
Открываем samp.cpp и в конец добавляем:
Код:
void faketext ( D3DCOLOR color, const char *text, ... )
{
if( g_SAMP != NULL )
{
va_list ap;
if ( text == NULL )
return;
char tmp[512];
memset( tmp, 0, 512 );
va_start( ap, text );
vsnprintf( tmp, sizeof(tmp)-1, text, ap );
va_end( ap );
addToChatWindow( tmp, color );
}
}
Код:
void faketext ( D3DCOLOR color, const char *text, ... );
Теперь можно приступить к созданию меню для отправки фейковой смс. Открываем файл new_menu.h и ищем в нем extern TwBar *twBar_Main; После добавляем:
Код:
extern TwBar *twBar_FakeText;
Теперь в файле new_menu.cpp находим TwBar *twBar_Main; и после него добавляем:
Код:
TwBar *twBar_FakeText;
Дальше находим
Код:
void TW_CALL cheatsMenuLinker(void *)
{
if(TwIsBarMinimized(twBar_SPCheats))
TwMaximizeBar(twBar_SPCheats);
else
TwMinimizeBar(twBar_SPCheats);
}
Код:
void TW_CALL fakeTextMenuLinker(void *)
{
if(TwIsBarMinimized(twBar_FakeText))
TwMaximizeBar(twBar_FakeText);
else
TwMinimizeBar(twBar_FakeText);
}
Код:
iMainMenuPosX = (pPresentParam.BackBufferWidth / 2) - (405 / 2) - 175;
iMainMenuPosY = (pPresentParam.BackBufferHeight / 2) - (235 / 2) - 175;
TwAddButton(twBar_Main, "Fake Text", fakeTextMenuLinker, NULL, " label='Fake Text' ");
sprintf(menuParameters," Cheats label='Fake Text' color='0 0 150' position='%d %d' size='405 350' fontsize='2' ", iMainMenuPosX, iMainMenuPosY);
TwDefine(menuParameters);
Если же у вас нету своего раздела, то ищем строчку:
Код:
TwAddButton(twBar_Main, "GTA", NULL, NULL, NULL);
Код:
iMainMenuPosX = (pPresentParam.BackBufferWidth / 2) - (405 / 2) - 175;
iMainMenuPosY = (pPresentParam.BackBufferHeight / 2) - (235 / 2) - 175;
TwAddButton(twBar_Main, "Fake Text", fakeTextMenuLinker, NULL, " label='Fake Text' ");
sprintf(menuParameters," Cheats label='Fake Text' color='0 0 150' position='%d %d' size='405 350' fontsize='2' ", iMainMenuPosX, iMainMenuPosY);
TwDefine(menuParameters);
Дальше, спускаемся вниз и находим вот такие строчки:
Код:
// CHEATS
// Cheats -> Vehicle upgrades
Код:
iMainMenuPosX = (pPresentParam.BackBufferWidth / 2) - (405 / 2) - 125;
iMainMenuPosY = (pPresentParam.BackBufferHeight / 2) - (235 / 2) - 125;
TwAddButton(twBar_FakeText, "Fake SMS", NULL, NULL, NULL);
TwAddVarRW(twBar_FakeText, "Sender", TW_TYPE_CSSTRING(24), &fakesms_sender, "");
TwAddVarRW(twBar_FakeText, "Text", TW_TYPE_CSSTRING(124), &fakesms_text, "");
TwAddVarRW(twBar_FakeText, "Sender ID", TW_TYPE_INT32, &fakesms_id, " min=0 max=1000 keyIncr=z keyDecr=Z ");
TwAddButton(twBar_FakeText, "Send SMS", fakeTextSMS, NULL, " label='Send SMS' ");
Теперь находим:
Код:
// MENU FUNCTIONS
Код:
char fakesms_sender[24] = "Pr0C", fakesms_text[124] = "Заходите на BlastHack.Net. У нас вы найдете все, что нужно настоящему читеру";
int fakesms_id = 7;
void TW_CALL fakeTextSMS(void *)
{
char sms[200];
snprintf(sms, sizeof(sms), "SMS: %s. Отправитель: %s[%d]", fakesms_text, fakesms_sender, fakesms_id);
faketext(D3DCOLOR_XRGB(255, 255, 0), sms);
}
И теперь открываем файл proxyIDirect3DDevice9.cpp Находим там строчку:
Код:
twBar_SPCheats = TwNewBarMinimized("Cheats");
Код:
twBar_FakeText = TwNewBarMinimized("Fake Text");
Это мой первый урок по C++, а так же это первая написанная мною функция для собейта, так что строго не судите, а лучше указывайте на ошибки :)
P.S. В меню, в поле для ввода текста смс, вводятся крякозябры, но в смс текст выводится правильно.