PDA

Просмотр полной версии : [mod_sa] Fake SMS (samp-rp)


Pr0C
09.08.2013, 19:59
Здравствуйте. В этом уроке я расскажу как сделать в собейте с AntTweakBar функцию отправки фейковой смски (кто не знает, смску видно только вам). Сейчас толку от этой функции на самп-рп мало, так как раздел с жалобами Администрация самп-рп прикрыла, но все же, кому-то может пригодится. Приступим.

Открываем 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 );
}
}




Это у нас функция для вывода в чат цветного текста. Теперь ее нужно объявить. В конец samp.h добавляем:

Код:






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. В меню, в поле для ввода текста смс, вводятся крякозябры, но в смс текст выводится правильно.




http://rghost.ru/48008089/image.png

key
10.08.2013, 10:40
молодец

web
10.08.2013, 11:19
Отлично

Active[X]
16.08.2013, 17:55
Nice.

MasterCard
16.08.2013, 23:23
Можно немного упростить написание кода ;D

Но всё же молодец :)

UnknownPlayer
24.08.2013, 20:17
Спасибо, но код очень велик.