
24.06.2013, 18:28
|
|
Участник форума
Регистрация: 29.04.2013
Сообщений: 141
С нами:
6861401
Репутация:
0
|
|
Сообщение от Skel
Сообщение от Спойлер
void RenderTeleportTexts ( void )
{
inti;
struct actor_info*self = actor_info_get( ACTOR_SELF, 0 );
charbuf[32];
if ( cheat_state->_generic.cheat_panic_enabled )
return;
if ( self != NULL )
{
for ( i = 0; i teleport.matrix[4 * 3], pos );
if ( vect3_near_zero(pos) )
continue;
if ( vect3_dist(pos, &self->base.matrix[4 * 3]) > set.player_tags_dist )
continue;
poss.x = pos[0];
poss.y = pos[1];
poss.z = pos[2];
CalcScreenCoors( &poss, &screenposs );
screenpos[0] = screenposs.x;
screenpos[1] = screenposs.y;
screenpos[2] = screenposs.z;
if ( screenpos[2] PrintShadow( screenpos[0], screenpos[1] - 5.0f, D3DCOLOR_XRGB(0, 200, 200), buf );
}
}
}
наверно это
Да код я видел, я уже кажется понял как сделать
|
|
|

27.06.2013, 20:39
|
|
Участник форума
Регистрация: 29.04.2013
Сообщений: 141
С нами:
6861401
Репутация:
0
|
|
Возможно ли сделать проверку ушли ли деньги?
|
|
|

27.06.2013, 20:55
|
|
Постоянный
Регистрация: 19.03.2013
Сообщений: 586
С нами:
6920791
Репутация:
113
|
|
Сообщение от Norma_Cheater
Возможно ли сделать проверку ушли ли деньги?
на изменение кол-ва денег можно.
|
|
|

28.06.2013, 22:52
|
|
Познающий
Регистрация: 31.03.2013
Сообщений: 92
С нами:
6903095
Репутация:
0
|
|
static DWORD time = 0;
if (GetTickCount() -11000 > time) // время
{
float x = *(float *)(0xC7DD58+48+160);
float y = *(float *)(0xC7DD58+52+160);
float z = *(float *)(0xC7DD58+56+160);
if((x > 2695 && x -1705 && y 1099 && x 1601 && y
|
|
|

28.06.2013, 23:08
|
|
Познавший АНТИЧАТ
Регистрация: 09.03.2013
Сообщений: 1,262
С нами:
6935116
Репутация:
183
|
|
[QUOTE="Skel"]
static DWORD time = 0;
if (GetTickCount() -11000 > time) // время
{
float x = *(float *)(0xC7DD58+48+160);
float y = *(float *)(0xC7DD58+52+160);
float z = *(float *)(0xC7DD58+56+160);
if((x > 2695 && x -1705 && y 1099 && x 1601 && y
|
|
|

28.06.2013, 23:32
|
|
Познающий
Регистрация: 31.03.2013
Сообщений: 92
С нами:
6903095
Репутация:
0
|
|
Сообщение от MISTER_GONWIK
я вижу лишь кучу говнокода, не иначе..
и вообще такие вещи делаются через структуру чекпоинтов, где и хранится вся инфа с которой очень удобно работать
можешь сделать урок/привести пример?
|
|
|

29.06.2013, 00:32
|
|
Постоянный
Регистрация: 19.03.2013
Сообщений: 586
С нами:
6920791
Репутация:
113
|
|
Сообщение от Skel
можешь сделать урок/привести пример?
У тебя в исходнике уже есть пример.
|
|
|

29.06.2013, 00:20
|
|
Постоянный
Регистрация: 26.05.2013
Сообщений: 692
С нами:
6822856
Репутация:
213
|
|
Как создать диалог типа list, и при выборе пункта из списка выполнялась функция?
|
|
|

29.06.2013, 14:14
|
|
Постоянный
Регистрация: 26.05.2013
Сообщений: 692
С нами:
6822856
Репутация:
213
|
|
Разобрался как создать диалог типа list, вот код:
Код:
Код:
void SAMP_Dialog(int send, int dialogID, int typedialog, char *caption, char *text, char *button1, char *button2)
{
uint32_t func = g_Samp_base+SAMP_DIALOG_SHOW;
uint32_t data = g_Samp_base+SAMP_DIALOG_INFO_OFFSET;
__asm mov eax, dword ptr [data]
__asm mov ecx, dword ptr [eax] //mov to offset
__asm push send //0 - No send response, 1 - Send response
__asm push button2
__asm push button1
__asm push text
__asm push caption
__asm push typedialog
__asm push dialogID
__asm call func
return;
}
В PAWNO показ диалога реализован вот так:
Код:
Код:
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, "Что из этого вы хотите выпить?", "Sprunk ($1)\nПиво ($2)\nВино ($3)", "Купить", "Отмена");
Теперь проблема состоит в том, как выполнить определенную функцию, при выборе итема из списка, в PAWNO это реализовано так:
Код:
[CODE]
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
// Для более простого управления диалоговыми окнами, можно использовать switch(dialogid), но в
//этом уроке использовано лишь одно диалоговое окно.
if(dialogid == 1 && response) // Если ID диалогового окна 1 (как мы указали в ShowPlayerDialog), и игрок нажал 'Купить'
{
// Теперь используем switch(listitem), чтобы выполнять действия для разных элементов
//диалогового окна. ID первого элемента в диалоговом окне - 0.
switch(listitem)
{
case 0:
{
if(GetPlayerMoney(playerid)
|
|
|

29.06.2013, 23:41
|
|
Участник форума
Регистрация: 19.03.2013
Сообщений: 101
С нами:
6920791
Репутация:
113
|
|
Как сделать Auto Reconnect ?
Как сделать Check point master?
Как сделать что бы машина ближайшего игрока кидалась в загрузку?
Как сделать что бы все машины тпшились ближайшему игроку на голову?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|