05:58
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
Menu Ceni v2 для SAMP 21.10.2014
Новая респа аэропорт LS 04.10.2014
Мод для SAMP The Land of De... 28.09.2014
Мод для SAMP Glow Role Play 28.09.2014
Мод для SAMP Gelios Role Pl... 28.09.2014
Страница 1 из 131231213»
Модератор форума: Alcoholik 
Форум SAMP о мультиплеерах для GTA. » Популярные моды » The Godfather » Паспорт (Паспорт для ГФ а то задрали =)))
Паспорт
xSLiMxДата: Вторник, 02.02.2010, 21:09 | Сообщение # 1
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2169
Награды: 34
Город: Ростов - на - Дону
Репутация: 1429
Замечания: 80%
Статус:
Так как многие хотят себе в моды паспорт - то вот он вам. Писал на забитую говном всяким голову.

Начнем.
Нам потребуется:


  • Мозг - 1 штука
  • Руки прямые - 2 штуки
  • Клавиатура - 1 штука
  • Мыщь - 1 штука
  • Знания в павно - хотябы какие нибудь
  • Павно - 1 штука
  • Ваш мод - хоть 1013018391 штук

В enum pInfo добавляем такое:
[pwn]
pPasport,
pPasport1,
pPasportGot,[/pwn]

Далее.

Идем в public OnPlayerConnect и пищим там где нибудь такое:
[pwn]
PlayerInfo[playerid][pPasport] = 0;[/pwn]

Далее.

Идем в public OnPlayerRegister и пищим там такое:
[pwn]
format(var, 32, "Passport=%d\n",PlayerInfo[playerid][pPasport]);fwrite(hFile, var);
format(var, 32, "Passport Have=%d\n",PlayerInfo[playerid][pPasport1]);fwrite(hFile, var);
format(var, 32, "Passport Got=%d\n",PlayerInfo[playerid][pPasportGot]);fwrite(hFile, var);[/pwn]

Идем в public OnPlayerUpdate и пищим там такое:
[pwn]
format(var, 32, "Passport=%d\n",PlayerInfo[playerid][pPasport]);fwrite(hFile, var);
format(var, 32, "Passport Have=%d\n",PlayerInfo[playerid][pPasport1]);fwrite(hFile, var);
format(var, 32, "Passport Got=%d\n",PlayerInfo[playerid][pPasportGot]);fwrite(hFile, var);[/pwn]

Идем в public OnPlayerLogin и пищим там такое:
[pwn]
if( strcmp( key , "Passport" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPasport] = strval( val ); }
if( strcmp( key , "Passport Have" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPasport1] = strval( val ); }
if( strcmp( key , "Passport Got" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPasportGot] = strval( val ); }[/pwn]

Так. Все вроде записали. Теперь команда получения.

[pwn]
if(strcmp(cmd, "/getpass", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pPasportGot]==1) {return SendClientMessage(playerid,COLOR_LIGHTBLUE,"У вас уже есть пасспорт");}
{
if(IsPlayerInRangeOfPoint(playerid,5.0,363.0847,173.7168,1008.3828))
{
new randpas = 10000 + random(89999);//minimum 10000 max 99999 Даем паспорт Рандомо номер его. Все деаед ваш мод
PlayerInfo[playerid][pPasport] = randpas;
new pasnumb = PlayerInfo[playerid][pPasport];
format(string, sizeof(string), "* Вы получили Паспорт.Его номер:%d",pasnumb);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[playerid][pPasport1]=1;
PlayerInfo[playerid][pPasportGot]=1;
OnPlayerUpdate(playerid);//выдача паспорта и сразу автосохранение
}
else
{
SendClientMessage(playerid, COLOR_YELLOW, " Чтобы Получить пасспорт оправляйтесь в Мерию.");
}
}
}
return 1;
}[/pwn]

Команда показывания паспорта.
[pwn]
if(strcmp(cmd,"/showpasport",true)==0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, " Использование: /showpasport [ид/чать ника]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if (ProxDetectorS(8.0, playerid, giveplayerid))
{
//if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, " Ты не можешь показать паспорт себе!"); return 1; }
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new pasport = PlayerInfo[playerid][pPasport];
format(string, sizeof(string), "|__________ Паспорт %s __________|", sendername);
SendClientMessage(giveplayerid, COLOR_WHITE, string);
format(string, sizeof(string), " Паспорт зарегистирован на игрока %s.", sendername);
SendClientMessage(giveplayerid, COLOR_GREY, string);
format(string, sizeof(string), " Номер паспорта: %d", pasport);
SendClientMessage(giveplayerid, COLOR_GREY, string);
format(string, sizeof(string), "|__________ Подпись %s __________|", sendername);
SendClientMessage(giveplayerid, COLOR_WHITE, string);
format(string, sizeof(string), "* %s показал вам свой паспорт.", sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Ты показал свой паспорт игроку %s.", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Этот игрок не рядом с тобой.");
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Этого игрока нет на сервере.");
return 1;
}
}
return 1;
}[/pwn]

И терь для копов (да бы они забирали паспорт).

Ищем /take и куда нибудь там пихаем такое.
[pwn]
else if(strcmp(x_nr,"pasport",true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, " Используйте: /take pasport [id/Name]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if (ProxDetectorS(5.0, playerid, giveplayerid))
{

GetPlayerName(playerid,sendername,sizeof(sendername));
GetPlayerName(giveplayerid,giveplayer,sizeof(giveplayer));
format(string, sizeof(string), "* Вы забрали паспорт у игрока %ы.", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Полицейский %s забрал ваш паспорт. Вы были уволены с работы.", sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
PlayerInfo[giveplayerid][pPasportGot] = 0;
PlayerInfo[giveplayerid][pPasport] = 0;
PlayerInfo[giveplayerid][pPasport1] = 0;
PlayerInfo[giveplayerid][pJob] = 0;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Этот игрок далеко !");
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Игрока нету на сервере !");
return 1;
}
}[/pwn]

И для завершения этой какашки.

Идем в команду /join.

В ней ищим:
Самое ее начало.
[pwn]
if(strcmp(cmd, "/join", true) == 0)
{
if(IsPlayerConnected(playerid))
{[/pwn]

и после этого добавляем:
[pwn]
if(PlayerInfo[playerid][pPasport1] == 0) {return SendClientMessage(playerid, COLOR_GREY, " У вас нету пасспорта.Чтобы получить его введите - /getpass");}[/pwn]

Получится такое:

[pwn]
if(strcmp(cmd, "/join", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pPasport1] == 0) {return SendClientMessage(playerid, COLOR_GREY, " У вас нету пасспорта.Чтобы получить его введите - /getpass");}

и тут уж все остальное. И по моему в конце (самом низу), надо всунуть }. (проверьте) [/pwn]

Ну и для красоты.

Идем в public ShowStats.

и пишим так такое:

[pwn]
new pasport = PlayerInfo[targetid][pPasport];[/pwn]

И теперь в удобную вам строку пишим такое:
[pwn]
Даю пример строки - главное черным и жирным
format(coordsstring, sizeof(coordsstring), "Наркота:[%d] Маты:[%d] Болезнь:[%s] Маффия: [%s] Ранг: [%s] Номер Пасспорта: [%d]", drugs,mats,dtext,ttext,rtext,pasport);
SendClientMessage(playerid, COLOR_GRAD5,coordsstring);

Главное тут:

Номер Пасспорта: [%d] и pasport

[/pwn]

И для красоты.

В OnGameModeInit

[pwn]
Create3DTextLabel("СДЕСЬ МОЖНО ПОЛУЧИТЬ ПАСПОРТ!\nВВЕДИТЕ /getpass ЧТОБЫ ПОЛУЧИТЬ ЕГО",0x008080FF,363.0847,173.7168,1008.3828,20.0,0);[/pwn]

Вроде все - что забыл - напишу

Чтобы получить паспорт - приходим в Мерию а там все поймете.

Если будут баги - пишите. У мя все работало (писал то я crazy )

З.Ы. Если у вас инклуды не 0.3 - то паспорта вам не видать.

Удачи © Слим

Сообщение отредактировал xSLiMx - Среда, 03.02.2010, 15:13
EXtaneДата: Вторник, 02.02.2010, 21:16 | Сообщение # 2
Новенький
Группа: Пользователи
Сообщений: 14
Награды: 1
Город: Львов
Репутация: 5
Замечания: 0%
Статус:
Как на меня это тупость можна зделать на много проще, но всё же...

[url="logoff"]нет, не надо на меня тыкать[/url]
xSLiMxДата: Вторник, 02.02.2010, 21:17 | Сообщение # 3
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2169
Награды: 34
Город: Ростов - на - Дону
Репутация: 1429
Замечания: 80%
Статус:
Quote (EXtane)
Как на меня это тупость

знаю может и тупо - кто доработает - кто так оставит - написал, проверил - вроде норм. Писал на головняк...

Quote (EXtane)
ожна зделать на много проще, но всё же...

А чеж не сделал? crazy

EXtaneДата: Вторник, 02.02.2010, 21:18 | Сообщение # 4
Новенький
Группа: Пользователи
Сообщений: 14
Награды: 1
Город: Львов
Репутация: 5
Замечания: 0%
Статус:
а что пасспорт можно взять в любом месте? оО

[url="logoff"]нет, не надо на меня тыкать[/url]
xSLiMxДата: Вторник, 02.02.2010, 21:21 | Сообщение # 5
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2169
Награды: 34
Город: Ростов - на - Дону
Репутация: 1429
Замечания: 80%
Статус:
Quote (EXtane)
а что пасспорт можно взять в любом месте? оО

Вроде как да). Кто захочит с определенного места - пишите где брать и я сделаю

_LexA_Дата: Вторник, 02.02.2010, 21:27 | Сообщение # 6
Долгожитель
Группа: Продвинутые
Сообщений: 1437
Награды: 161
Город: Ростов-на-Дону
Репутация: 563
Замечания: 20%
Статус:
Тем, кому надо сделать так, чтобы лицензер выдавал паспорт :
Для просмотра лицензий вписать в команду /givelicense это :
[pwn]if(strcmp(x_nr,"pasport",true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "Используйте: /givelicense pasport [playerid/PartOfName]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "* Вы дали паспорт %s.",giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Инструктор %s дал вам паспорт.",sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
PlayerInfo[giveplayerid][pPasport] = 1;
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Этого игрока нету на сервере !");
return 1;
}
}[/pwn]
И в команду /licenses такое :
[pwn]new text6[20];
if(PlayerInfo[playerid][pPasport]) { text6 = "есть"; } else { text6 = "нету"; }
format(string, sizeof(string), "* Паспорт: %s.", text6);
SendClientMessage(playerid, COLOR_GREY, string);[/pwn]

Добавлено (02.02.2010, 21:27)
---------------------------------------------
Немного спутал :

Quote (_LexA_)
Для просмотра лицензий вписать в команду /givelicense это :

Это для выдачи, а это :
Quote (_LexA_)
И в команду /licenses такое :

Для просмотра.
ImperealДата: Вторник, 02.02.2010, 21:28 | Сообщение # 7
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2678
Награды: 51
Город: Санкт-Петербург
Репутация: 1868
Замечания: 100%
Статус:
Обьясни дауну куда это пихнуть

[offtop]if(strcmp(cmd, "/join", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pPasport1] == 0) {return SendClientMessage(playerid, COLOR_GREY, " У вас нету пасспорта.Чтобы получить его введите - /getpass");}


Прощай самп-рус =Р
xSLiMxДата: Вторник, 02.02.2010, 21:31 | Сообщение # 8
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2169
Награды: 34
Город: Ростов - на - Дону
Репутация: 1429
Замечания: 80%
Статус:
Quote (zm-96)
Обьясни дауну куда это пихнуть

давай сюда /join. Сделаю сейчас.

vlad20Дата: Вторник, 02.02.2010, 21:32 | Сообщение # 9
Постоялец
Группа: I'm V.I.P.
Сообщений: 417
Награды: 5
Город: Одесса
Репутация: 82
Замечания: 60%
Статус:
zm-96, кароче иди в команду которой устраиваться на работу(например /join или /takejob я незнаю какой у тебя мод(и вставь туда строчку
[pwn]if(PlayerInfo[playerid][pPasport1] == 0) {return SendClientMessage(playerid, COLOR_GREY, " У вас нету пасспорта.Чтобы получить его введите - /getpass");}[/pwn]
ImperealДата: Вторник, 02.02.2010, 21:36 | Сообщение # 10
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2678
Награды: 51
Город: Санкт-Петербург
Репутация: 1868
Замечания: 100%
Статус:
[offtop]}
if(strcmp(cmd, "/join", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pJob] == 0)
{
if(gTeam[playerid] == 1 || gTeam[playerid] == 2 || gTeam[playerid] == 4 || gTeam[playerid] == 11)
{
SendClientMessage(playerid, COLOR_GREY, " You must be a Civilian (Not Wanted) or a Family Member to get a Job !");
return 1;
}
if (GetPlayerState(playerid) == 1 && PlayerToPoint(3.0, playerid,-78.620666, -1169.911499, 2.140778))
{
Вот сюды или куда?


Прощай самп-рус =Р
deniskarДата: Вторник, 02.02.2010, 21:42 | Сообщение # 11
Освоившийся
Группа: Пользователи
Сообщений: 112
Награды: 2
Город: астрахань
Репутация: 1
Замечания: 0%
Статус:
чувак а мне нужно чтоб в определенном месте, сделаешь? вместо координат поставь точки , я потом сам вставлю! плз помоги давно хотел сделть
ImperealДата: Вторник, 02.02.2010, 21:45 | Сообщение # 12
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2678
Награды: 51
Город: Санкт-Петербург
Репутация: 1868
Замечания: 100%
Статус:
[pwn]Проверяю чё за шняга!))

Прощай самп-рус =Р
_LexA_Дата: Вторник, 02.02.2010, 21:45 | Сообщение # 13
Долгожитель
Группа: Продвинутые
Сообщений: 1437
Награды: 161
Город: Ростов-на-Дону
Репутация: 563
Замечания: 20%
Статус:
deniskar,
[pwn]if(strcmp(cmd, "/getpass", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerToPoint(2, playerid,x,y,z))
{
new randpas = 10000 + random(89999);//minimum 10000 max 99999 Даем паспорт Рандомо номер его. Все деаед ваш мод
PlayerInfo[playerid][pPasport] = randpas;
new pasnumb = PlayerInfo[playerid][pPasport];
format(string, sizeof(string), "* Вы получили Пасспорт.Его номер: %d",pasnumb);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[playerid][pPasport1]=1;
OnPlayerUpdate(playerid);//выдача паспорта и сразу автосохранение
}
else {SendClientMessage(playerid, COLOR_YELLOW, "Вы не там, где надо покупать паспорт."); }
}
return 1;
}[/pwn]
xSLiMxДата: Вторник, 02.02.2010, 21:48 | Сообщение # 14
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2169
Награды: 34
Город: Ростов - на - Дону
Репутация: 1429
Замечания: 80%
Статус:
_LexA_,

if(strcmp(cmd, "/getpass", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerToPoint(5.0, playerid,x,y,z)) //помоему радиус указываеться в типе x.x типо 5.0 ну короче вы поняли
{
new randpas = 10000 + random(89999);//minimum 10000 max 99999 Даем паспорт Рандомо номер его. Все деаед ваш мод
PlayerInfo[playerid][pPasport] = randpas;
new pasnumb = PlayerInfo[playerid][pPasport];
format(string, sizeof(string), "* Вы получили Пасспорт.Его номер: %d",pasnumb);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[playerid][pPasport1]=1;
OnPlayerUpdate(playerid);//выдача паспорта и сразу автосохранение
}
else {SendClientMessage(playerid, COLOR_YELLOW, "Вы не там, где надо покупать паспорт."); }
}
return 1;
}

toneysixДата: Вторник, 02.02.2010, 21:50 | Сообщение # 15
Джэдай
Группа: I'm V.I.P.
Сообщений: 1731
Награды: 77
Город: Салават
Репутация: 1825
Замечания: 0%
Статус:
xSLiMx не по моему, а так точно. Хотя оно так же является работоспособным, но это не верный вариант который в дальнейшем может привести к нестабильной работе. И ещё сколько раз говорить уже используйте IsPlayerInRangeOfPoint если уж учите людей, учите правильно.

Русскоязычныи портал о MTA/GTA-IV-MP | http://multi-theft-auto.ru
Форум SAMP о мультиплеерах для GTA. » Популярные моды » The Godfather » Паспорт (Паспорт для ГФ а то задрали =)))
Страница 1 из 131231213»
Поиск:





 


 


 
Хостинг от uCoz SAMP-RUS.COM