|  
| Naemnik95 | Дата: Вторник, 22.02.2011, 15:00 | Сообщение # 1 |  |  
 
  
 |  |   
 |  |   
 | Генерал-полковник |   
 |  |   
 | Группа: Пользователи |   
 | Сообщений: 81 |   
 | « 865 » |   
 |  |   
 | Статус:   |   
 |  |  | Здравствуйте в уроке я раскажу как сделать мобильник на текстдрайвах,думаю многим это понадобится и многие это хорошо оценят.Я это выкладываю не для чтобы вы это обсирали или комментировали,автор не я.Я это выложил для того чтобы ставили на свои сервера и пользовались.Ну что приступим: Тексдравы строились на чистенькой ГТА с русификатором от какой-то там команды SL.
 Место для построения скрипта - cream life game mode v.1.2
  И так. Для начала мы создадим сами тексдравы в отдельном паблике.
 Для этого добавляем этот код в (желательно) конец вашего мода:
  Здравствуйте в уроке я раскажу как сделать мобильник на текстдрайвах,думаю многим это понадобится и многие это хорошо оценят.Я это выкладываю не для чтобы вы это обсирали или комментировали,автор не я.Я это выложил для того чтобы ставили на свои сервера и пользовались.Ну что приступим: Тексдравы строились на чистенькой ГТА с русификатором от какой-то там команды SL.
 Место для построения скрипта - cream life game mode v.1.2
  И так. Для начала мы создадим сами тексдравы в отдельном паблике.
 Для этого добавляем этот код в (желательно) конец вашего мода:
 public Mobilka(playerid)
 
 Quote   {   TM1[playerid] = TextDrawCreate(176.000000,121.000000," ");   TM2[playerid] = TextDrawCreate(165.000000,139.000000," ");   TM3[playerid] = TextDrawCreate(87.000000,260.000000,"1 2 3");   TM4[playerid] = TextDrawCreate(86.000000,279.000000,"4 5 6");   TM5[playerid] = TextDrawCreate(87.000000,297.000000,"7 8 9");   TM6[playerid] = TextDrawCreate(126.000000,316.000000," #");   TM7[playerid] = TextDrawCreate(115.000000,244.000000,"@");   TM8[playerid] = TextDrawCreate(82.000000,314.000000," @");   TM9[playerid] = TextDrawCreate(87.000000,121.000000,"nokia");   TM10[playerid] = TextDrawCreate(113.000000,323.000000," <>");   TextDrawUseBox(TM1[playerid],1);   TextDrawBoxColor(TM1[playerid],0x00000099);   TextDrawTextSize(TM1[playerid],71.000000,-20.000000);   TextDrawUseBox(TM2[playerid],1);   TextDrawBoxColor(TM2[playerid],0xffffff99);   TextDrawTextSize(TM2[playerid],81.000000,46.000000);   TextDrawAlignment(TM1[playerid],0);   TextDrawAlignment(TM2[playerid],0);   TextDrawAlignment(TM3[playerid],0);   TextDrawAlignment(TM4[playerid],0);   TextDrawAlignment(TM5[playerid],0);   TextDrawAlignment(TM6[playerid],0);   TextDrawAlignment(TM7[playerid],0);   TextDrawAlignment(TM8[playerid],0);   TextDrawAlignment(TM9[playerid],0);   TextDrawAlignment(TM10[playerid],0);   TextDrawBackgroundColor(TM1[playerid],0x00000099);   TextDrawBackgroundColor(TM2[playerid],0x000000ff);   TextDrawBackgroundColor(TM3[playerid],0xffff0033);   TextDrawBackgroundColor(TM4[playerid],0xffff0033);   TextDrawBackgroundColor(TM5[playerid],0xffff0033);   TextDrawBackgroundColor(TM6[playerid],0xffff0033);   TextDrawBackgroundColor(TM7[playerid],0xff000066);   TextDrawBackgroundColor(TM8[playerid],0xffff0033);   TextDrawBackgroundColor(TM9[playerid],0xff000033);   TextDrawBackgroundColor(TM10[playerid],0xff000033);   TextDrawFont(TM1[playerid],3);   TextDrawLetterSize(TM1[playerid],2.900000,2.000000);   TextDrawFont(TM2[playerid],3);   TextDrawLetterSize(TM2[playerid],-0.300000,1.899999);   TextDrawFont(TM3[playerid],3);   TextDrawLetterSize(TM3[playerid],0.699999,2.200000);   TextDrawFont(TM4[playerid],3);   TextDrawLetterSize(TM4[playerid],0.699999,2.099999);   TextDrawFont(TM5[playerid],3);   TextDrawLetterSize(TM5[playerid],0.699999,1.800000);   TextDrawFont(TM6[playerid],3);   TextDrawLetterSize(TM6[playerid],1.000000,1.000000);   TextDrawFont(TM7[playerid],2);   TextDrawLetterSize(TM7[playerid],2.100000,1.900000);   TextDrawFont(TM8[playerid],1);   TextDrawLetterSize(TM8[playerid],1.300000,1.100000);   TextDrawFont(TM9[playerid],2);   TextDrawLetterSize(TM9[playerid],0.599999,1.400000);   TextDrawFont(TM10[playerid],3);   TextDrawLetterSize(TM10[playerid],0.299999,1.600000);   TextDrawColor(TM1[playerid],0xffffffff);   TextDrawColor(TM2[playerid],0xffffffff);   TextDrawColor(TM3[playerid],0xffffffff);   TextDrawColor(TM4[playerid],0xffffffff);   TextDrawColor(TM5[playerid],0xffffffff);   TextDrawColor(TM6[playerid],0xffffffff);   TextDrawColor(TM7[playerid],0xffffffff);   TextDrawColor(TM8[playerid],0xffffffff);   TextDrawColor(TM9[playerid],0xffffffff);   TextDrawColor(TM10[playerid],0xffffffff);   TextDrawSetOutline(TM1[playerid],1);   TextDrawSetOutline(TM2[playerid],1);   TextDrawSetOutline(TM3[playerid],1);   TextDrawSetOutline(TM4[playerid],1);   TextDrawSetOutline(TM5[playerid],1);   TextDrawSetOutline(TM6[playerid],1);   TextDrawSetOutline(TM7[playerid],1);   TextDrawSetOutline(TM8[playerid],1);   TextDrawSetOutline(TM9[playerid],1);   TextDrawSetOutline(TM10[playerid],1);   TextDrawSetProportional(TM1[playerid],1);   TextDrawSetProportional(TM2[playerid],1);   TextDrawSetProportional(TM3[playerid],1);   TextDrawSetProportional(TM4[playerid],1);   TextDrawSetProportional(TM5[playerid],1);   TextDrawSetProportional(TM6[playerid],1);   TextDrawSetProportional(TM7[playerid],1);   TextDrawSetProportional(TM8[playerid],1);   TextDrawSetProportional(TM9[playerid],1);   TextDrawSetProportional(TM10[playerid],1);   TextDrawSetShadow(TM1[playerid],1);   TextDrawSetShadow(TM2[playerid],1);   TextDrawSetShadow(TM3[playerid],1);   TextDrawSetShadow(TM4[playerid],1);   TextDrawSetShadow(TM5[playerid],1);   TextDrawSetShadow(TM6[playerid],1);   TextDrawSetShadow(TM7[playerid],1);   TextDrawSetShadow(TM8[playerid],1);   TextDrawSetShadow(TM9[playerid],1);   TextDrawSetShadow(TM10[playerid],1);   //Òèïî ïàíåëüêà.. TM11[playerid] = TextDrawCreate(148.000000,139.000000,"]]]]]");
 TM12[playerid] = TextDrawCreate(87.000000,137.000000,"||||||||||");
 TM13[playerid] = TextDrawCreate(102.000000,160.000000,"alarm");
 TM14[playerid] = TextDrawCreate(106.000000,181.000000," 123456");
 TM15[playerid] = TextDrawCreate(106.000000,228.000000,"menu");
 TM16[playerid] = TextDrawCreate(94.000000,201.000000,"66:66");
 TextDrawAlignment(TM11[playerid],0);
 TextDrawAlignment(TM12[playerid],0);
 TextDrawAlignment(TM13[playerid],0);
 TextDrawAlignment(TM14[playerid],0);
 TextDrawAlignment(TM15[playerid],0);
 TextDrawAlignment(TM16[playerid],0);
 TextDrawBackgroundColor(TM11[playerid],0x0000ff33);
 TextDrawBackgroundColor(TM12[playerid],0x0000ff33);
 TextDrawBackgroundColor(TM13[playerid],0xff000033);
 TextDrawBackgroundColor(TM14[playerid],0x000000ff);
 TextDrawBackgroundColor(TM15[playerid],0x0000ff33);
 TextDrawBackgroundColor(TM16[playerid],0x000000ff);
 TextDrawFont(TM11[playerid],3);
 TextDrawLetterSize(TM11[playerid],0.199999,0.799999);
 TextDrawFont(TM12[playerid],3);
 TextDrawLetterSize(TM12[playerid],0.099999,2.300002);
 TextDrawFont(TM13[playerid],2);
 TextDrawLetterSize(TM13[playerid],0.299999,2.499999);
 TextDrawFont(TM14[playerid],2);
 TextDrawLetterSize(TM14[playerid],0.199999,2.200000);
 TextDrawFont(TM15[playerid],1);
 TextDrawLetterSize(TM15[playerid],0.399999,1.800000);
 TextDrawFont(TM16[playerid],2);
 TextDrawLetterSize(TM16[playerid],0.499999,2.600000);
 TextDrawColor(TM11[playerid],0xffffffff);
 TextDrawColor(TM12[playerid],0xffffffff);
 TextDrawColor(TM13[playerid],0xffffffff);
 TextDrawColor(TM14[playerid],0xffffffff);
 TextDrawColor(TM15[playerid],0xffffffff);
 TextDrawColor(TM16[playerid],0xffffffff);
 TextDrawSetOutline(TM11[playerid],1);
 TextDrawSetOutline(TM12[playerid],1);
 TextDrawSetOutline(TM13[playerid],1);
 TextDrawSetOutline(TM14[playerid],1);
 TextDrawSetOutline(TM15[playerid],1);
 TextDrawSetOutline(TM16[playerid],1);
 TextDrawSetProportional(TM11[playerid],1);
 TextDrawSetProportional(TM12[playerid],1);
 TextDrawSetProportional(TM13[playerid],1);
 TextDrawSetProportional(TM14[playerid],1);
 TextDrawSetProportional(TM15[playerid],1);
 TextDrawSetProportional(TM16[playerid],1);
 TextDrawSetShadow(TM11[playerid],1);
 TextDrawSetShadow(TM12[playerid],1);
 TextDrawSetShadow(TM13[playerid],1);
 TextDrawSetShadow(TM14[playerid],1);
 TextDrawSetShadow(TM15[playerid],1);
 TextDrawSetShadow(TM16[playerid],1);
 return 1;
 }
 
Далее ко всем forward добавим: forward Mobilka(playerid);
 Далее ко всем new добавляем эти:
 
 Quote new Text:TM1[MAX_PLAYERS]; new Text:TM2[MAX_PLAYERS];
 new Text:TM3[MAX_PLAYERS];
 new Text:TM4[MAX_PLAYERS];
 new Text:TM5[MAX_PLAYERS];
 new Text:TM6[MAX_PLAYERS];
 new Text:TM7[MAX_PLAYERS];
 new Text:TM8[MAX_PLAYERS];
 new Text:TM9[MAX_PLAYERS];
 new Text:TM10[MAX_PLAYERS];
 new Text:TM11[MAX_PLAYERS];
 new Text:TM12[MAX_PLAYERS];
 new Text:TM13[MAX_PLAYERS];
 new Text:TM14[MAX_PLAYERS];
 new Text:TM15[MAX_PLAYERS];
 new Text:TM16[MAX_PLAYERS];
Отлично, идем дальше.
 Для того что бы каждому игроку создавался свой тексдрав мы в public OnPlayerConnect
  должны добавить вот это чудо: Mobilka(playerid);
 Далее когда игроку начнут звонить нам необходимо вывести наш мобильничеГ на экран и тем самым прописав в одном из тексдравов номер звонящего.
  Для этого добавляем в команду /call эту шнягу: 
 Quote TextDrawShowForPlayer(playerid, TM1[playerid]); TextDrawShowForPlayer(playerid, TM2[playerid]);
 TextDrawShowForPlayer(playerid, TM3[playerid]);
 TextDrawShowForPlayer(playerid, TM4[playerid]);
 TextDrawShowForPlayer(playerid, TM5[playerid]);
 TextDrawShowForPlayer(playerid, TM6[playerid]);
 TextDrawShowForPlayer(playerid, TM7[playerid]);
 TextDrawShowForPlayer(playerid, TM8[playerid]);
 TextDrawShowForPlayer(playerid, TM9[playerid]);
 TextDrawShowForPlayer(playerid, TM10[playerid]);
 TextDrawShowForPlayer(playerid, TM11[playerid]);
 TextDrawShowForPlayer(playerid, TM12[playerid]);
 TextDrawShowForPlayer(playerid, TM13[playerid]);
 TextDrawShowForPlayer(playerid, TM14[playerid]);
 TextDrawShowForPlayer(playerid, TM15[playerid]);
 TextDrawShowForPlayer(playerid, TM16[playerid]);
 new stmob[MAX_PLAYERS];
 new minm;
 new secm;
 new stringm[50];
 gettime(minm, secm);
 stmob[playerid] = PlayerInfo[playerid][pPnumber];
 TextDrawSetString(TM14[playerid], stmob[playerid]);
 format(stringm, sizeof(stringm), "%d:%d", minm,secm);
 TextDrawSetString(TM16[playerid], stringm);
Добавляйте этот код после строк типа:
 if(IsAtPayphone(playerid)) format(string, sizeof(string), " Мобилка звонит кэп, введи (/Pickup) и поднеми трубку."); //modif
 else format(string, sizeof(string), " А тут че та тоже , введи (/Pickup) Звонит чел с номером: %d", PlayerInfo[playerid][pPnumber]); //modif
 //format(string, sizeof(string), "Ваша мобила звонит. оО: %s", sendername);
 SendClientMessage(giveplayerid, COLOR_YELLOW2, string);
  Теперь у меня он выглядит вот так: 
 Quote  if(strcmp(cmd, "/call", true) == 0)
 {
 if(IsPlayerConnected(playerid))
 {
 tmp = strtok(cmdtext, idx);
 if(!strlen(tmp))
 {
 SendClientMessage(playerid, COLOR_GRAD2, "ÈÍÔÎ: /call [phonenumber]");
 return 1;
 }
 if(PhoneOnline[playerid] == 1)
 {
 SendClientMessage(playerid, COLOR_GRAD2, "Âàø ìîáèëüíûé âûêëþ÷åí! Ïðåæäå ÷åì çâîíèòü - âêëþ÷èòå åãî! (/togphone)");
 return 1;
 }
 if(PlayerInfo[playerid][pJailed] > 0)
 {
 SendClientMessage(playerid, COLOR_GRAD2, "Ó âàñ îòîáðàëè òåëåôîí íà âðåìÿ çàêëþ÷åíèÿ.");
 return 1;
 }
 if(PlayerInfo[playerid][pPnumber] == 0)
 {
 SendClientMessage(playerid, COLOR_GRAD2, "Ó âàñ íåò ìîáèëüíîãî òåëåôîíà òåëåôîíà.");
 return 1;
 }
 if(PlayerCuffed[playerid] > 0)
 {
 SendClientMessage(playerid, COLOR_GRAD2, "Âû íå ìîæåòå ïîçâîíèòü, ò.ê. ó âàñ çàíÿòû ðóêè!");
 return 1;
 }
 if(PlayerInfo[playerid][pTA] <= 0)
 {
 SendClientMessage(playerid, COLOR_GRAD1, "Âàø íîìåð çàáëîêèðîâàí. Âàì íåîáõîäèìî ïîïîëíèòü áàëàíñ.");
 SendClientMessage(playerid, COLOR_GRAD2, "ÈÍÔÎ: Ýòî ìîæíî ñäåëàòü â ëþáîì ìàãàçèíå èç ñåòè 24\7.");
 SendClientMessage(playerid, COLOR_GRAD3, "ÈÍÔÎ: /account [money] ÷òîáû ïîïîëíèòü âàø ñ÷åò.");
 return 1;
 }
 if(Mobile[playerid] != 255)
 {
 SendClientMessage(playerid, COLOR_GRAD2, "Âû óæå çâîíèòå!");
 return 1;
 }
 GetPlayerName(playerid, sendername, sizeof(sendername));
 format(string, sizeof(string), "* %s íaáupaeò íoìep.", sendername);
 ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
 new phonenumb = strval(tmp);
 SetPlayerSpecialAction ( playerid , SPECIAL_ACTION_USECELLPHONE );
 if(phonenumb == 911)
 {
 SendClientMessage(playerid, COLOR_ALLDEPT, "ÄÈÑÏÅÒ×ÅÐ: Êîãî âû õîòèòå âûçâàòü? ïîëèöèþ (02) èëè ìåäèêà (03) ");
 Mobile[playerid] = 911;
 return 1;
 }
 if(phonenumb == PlayerInfo[playerid][pPnumber])
 {
 SendClientMessage(playerid, COLOR_GRAD2, "** Àáîíåíò çàíÿò **");
 SetTimerEx("HidePhone",2000,0,"i",Float:playerid);
 return 1;
 }
 for(new i = 0; i < MAX_PLAYERS; i++)
 {
 if(IsPlayerConnected(i))
 {
 if(PlayerInfo[i][pPnumber] == phonenumb && phonenumb != 0)
 {
 giveplayerid = i;
 Mobile[playerid] = giveplayerid; //caller connecting
 if(IsPlayerConnected(giveplayerid))
 {
 if(giveplayerid != INVALID_PLAYER_ID)
 {
 if(PhoneOnline[giveplayerid] > 0)
 {
 SendClientMessage(playerid, COLOR_GREY, "** Àáîíåíò íåäîñòóïåí **");
 SetTimerEx("HidePhone",2000,0,"i",Float:playerid);
 return 1;
 }
 if(PlayerInfo[giveplayerid][pJailed] > 0)
 {
 SendClientMessage(playerid, COLOR_GREY, "** Àáîíåíò íåäîñòóïåí **");
 SetTimerEx("HidePhone",2000,0,"i",Float:playerid);
 return 1;
 }
 if (Mobile[giveplayerid] == 255)
 {
 if(IsAtPayphone(playerid)) format(string, sizeof(string), " Âàø òåëåôîí çàçâîíèë, ââåäèòå (/Pickup) Âûçûâàåò: Íåèçâåñòíûé âõîäÿùèé"); //modif
 else format(string, sizeof(string), " Âàø òåëåôîí çàçâîíèë, ââåäèòå (/Pickup) Âûçûâàåò: %d", PlayerInfo[playerid][pPnumber]); //modif
 // format(string, sizeof(string), "Baø ìoáuëüíuk çâoíuò. Aáoíeíò: %s", sendername);
 SendClientMessage(giveplayerid, COLOR_YELLOW2, string);
 
 TextDrawShowForPlayer(playerid, TM1[playerid]);
 TextDrawShowForPlayer(playerid, TM2[playerid]);
 TextDrawShowForPlayer(playerid, TM3[playerid]);
 TextDrawShowForPlayer(playerid, TM4[playerid]);
 TextDrawShowForPlayer(playerid, TM5[playerid]);
 TextDrawShowForPlayer(playerid, TM6[playerid]);
 TextDrawShowForPlayer(playerid, TM7[playerid]);
 TextDrawShowForPlayer(playerid, TM8[playerid]);
 TextDrawShowForPlayer(playerid, TM9[playerid]);
 TextDrawShowForPlayer(playerid, TM10[playerid]);
 TextDrawShowForPlayer(playerid, TM11[playerid]);
 TextDrawShowForPlayer(playerid, TM12[playerid]);
 TextDrawShowForPlayer(playerid, TM13[playerid]);
 TextDrawShowForPlayer(playerid, TM14[playerid]);
 TextDrawShowForPlayer(playerid, TM15[playerid]);
 TextDrawShowForPlayer(playerid, TM16[playerid]);
 new stmob[MAX_PLAYERS];
 new minm;
 new secm;
 new stringm[50];
 gettime(minm, secm);
 stmob[playerid] = PlayerInfo[playerid][pPnumber];
 TextDrawSetString(TM14[playerid], stmob[playerid]);
 format(stringm, sizeof(stringm), "%d:%d", minm,secm);
 TextDrawSetString(TM16[playerid], stringm);
 
 GetPlayerName(giveplayerid, sendername, sizeof(sendername));
 RingTone[giveplayerid] = 10;
 format(string, sizeof(string), "** Ó %s çâîíèò òåëåôîí.", sendername);
 ProxDetector(30.0, i, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
 CellTime[playerid] = 1;
 if(IsAtPayphone(playerid))
 {
 Payphone[playerid]=1;
 TogglePlayerControllable(playerid,0);
 }
 return 1;
 }
 }
 }
 }
 }
 }
 SendClientMessage(playerid, COLOR_GRAD2, "** Àáîíåíò çàíÿò **");
 SetTimerEx("HidePhone",2000,0,"i",Float:playerid);
 }
 return 1;
 }
Теперь что бы при кидании трубки мобилка исчезала мы сделаем в команде /h (у меня так)
 Следующее:
 После строки типа *Вы закончили разговор*
 Вставьте этот код:
 
 Quote TextDrawHideForPlayer(playerid, TM1[playerid]); TextDrawHideForPlayer(playerid, TM2[playerid]);
 TextDrawHideForPlayer(playerid, TM3[playerid]);
 TextDrawHideForPlayer(playerid, TM4[playerid]);
 TextDrawHideForPlayer(playerid, TM5[playerid]);
 TextDrawHideForPlayer(playerid, TM6[playerid]);
 TextDrawHideForPlayer(playerid, TM7[playerid]);
 TextDrawHideForPlayer(playerid, TM8[playerid]);
 TextDrawHideForPlayer(playerid, TM9[playerid]);
 TextDrawHideForPlayer(playerid, TM10[playerid]);
 TextDrawHideForPlayer(playerid, TM11[playerid]);
 TextDrawHideForPlayer(playerid, TM12[playerid]);
 TextDrawHideForPlayer(playerid, TM13[playerid]);
 TextDrawHideForPlayer(playerid, TM14[playerid]);
 TextDrawHideForPlayer(playerid, TM15[playerid]);
 TextDrawHideForPlayer(playerid, TM16[playerid]);
Ну вот вроде бы с высвечиванием мобильника на экране по звонку другого игрока мы сделали.
 Теперь сделаем простенькую шнягу которая будет показывать нам "просто" время на мобильнике.
 Для этого в комманду /time добавьте, после подобных строк!!!
 
 Quote format(string, sizeof(string), "~y~%d %s~n~~g~|~w~%d:%d~g~|", day, mtext, hour, minuite); }
 }
 GameTextForPlayer(playerid, string, 5000, 1);
 Добавляем: 
 Quote new minm; new secm;
 new stringm[20];
 gettime(minm, secm);
 format(stringm, sizeof(stringm), "%d:%d", minm,secm);
 TextDrawSetString(TM16[playerid], stringm);
 TextDrawShowForPlayer(playerid, TM1[playerid]);
 TextDrawShowForPlayer(playerid, TM2[playerid]);
 TextDrawShowForPlayer(playerid, TM3[playerid]);
 TextDrawShowForPlayer(playerid, TM4[playerid]);
 TextDrawShowForPlayer(playerid, TM5[playerid]);
 TextDrawShowForPlayer(playerid, TM6[playerid]);
 TextDrawShowForPlayer(playerid, TM7[playerid]);
 TextDrawShowForPlayer(playerid, TM8[playerid]);
 TextDrawShowForPlayer(playerid, TM9[playerid]);
 TextDrawShowForPlayer(playerid, TM10[playerid]);
 TextDrawShowForPlayer(playerid, TM11[playerid]);
 TextDrawShowForPlayer(playerid, TM12[playerid]);
 TextDrawShowForPlayer(playerid, TM15[playerid]);
 TextDrawShowForPlayer(playerid, TM16[playerid]);
 SendClientMessage(playerid, COLOR_GRAD2, "Введите /pomo что бы убрать мобильник.");
Ну и добавим наше /pomo, можно прямо после комманды /time :
 
 Quote if(strcmp(cmd, "/pomo", true) == 0) {
 if(IsPlayerConnected(playerid))
 {
 new stringm[20];
 new minm;
 new secm;
 GetPlayerName(playerid, sendername, sizeof(sendername));
 format(string, sizeof(string), "* %s Уберает мобильник.", sendername);
 ProxDetector(20.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
 TextDrawHideForPlayer(playerid, TM1[playerid]);
 TextDrawHideForPlayer(playerid, TM2[playerid]);
 TextDrawHideForPlayer(playerid, TM3[playerid]);
 TextDrawHideForPlayer(playerid, TM4[playerid]);
 TextDrawHideForPlayer(playerid, TM5[playerid]);
 TextDrawHideForPlayer(playerid, TM6[playerid]);
 TextDrawHideForPlayer(playerid, TM7[playerid]);
 TextDrawHideForPlayer(playerid, TM8[playerid]);
 TextDrawHideForPlayer(playerid, TM9[playerid]);
 TextDrawHideForPlayer(playerid, TM10[playerid]);
 TextDrawHideForPlayer(playerid, TM11[playerid]);
 TextDrawHideForPlayer(playerid, TM12[playerid]);
 TextDrawHideForPlayer(playerid, TM13[playerid]);
 TextDrawHideForPlayer(playerid, TM14[playerid]);
 TextDrawHideForPlayer(playerid, TM15[playerid]);
 TextDrawHideForPlayer(playerid, TM16[playerid]);
 }
 return 1;
 }
Ну и на конец сделаем такую операцию:
 В public OnPlayerDisconnect
 
 Quote Delete3DTextLabel(TM1[playerid]); Delete3DTextLabel(TM2[playerid]);
 Delete3DTextLabel(TM3[playerid]);
 Delete3DTextLabel(TM4[playerid]);
 Delete3DTextLabel(TM5[playerid]);
 Delete3DTextLabel(TM6[playerid]);
 Delete3DTextLabel(TM7[playerid]);
 Delete3DTextLabel(TM8[playerid]);
 Delete3DTextLabel(TM9[playerid]);
 Delete3DTextLabel(TM10[playerid]);
 Delete3DTextLabel(TM11[playerid]);
 Delete3DTextLabel(TM12[playerid]);
 Delete3DTextLabel(TM13[playerid]);
 Delete3DTextLabel(TM14[playerid]);
 Delete3DTextLabel(TM15[playerid]);
 Delete3DTextLabel(TM16[playerid]);
Вот и всё.
 Сам оригинал того как выглядит мобильник:
 
 
 
    |  |  |  |  |