Advertisement
Guest User

Gang System

a guest
Aug 28th, 2010
4,667
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 40.15 KB | None | 0 0
  1. #include <a_samp>
  2. #include <Dini>
  3.  
  4. //Principais [NÃO MUDAR]
  5. #if defined MAX_PLAYERS
  6. #undef MAX_PLAYERS
  7. #define MAX_PLAYERS 501
  8. #endif
  9.  
  10. //===== [ OBSERVAÇÃO ] =====
  11. //Sempre o máximo será o número mais 1!
  12. //Ou seja 33 == 32 gangs
  13. #define MAX_GANGS 33 //Não ultrapassar 500!
  14. #define MAX_GANG_PLAYERS 17
  15. #define MAX_CONVIDADOS 9
  16. new ScolL[MAX_PLAYERS],NomeEscol[MAX_PLAYERS][25],LevelPM[MAX_PLAYERS],TemGang[MAX_PLAYERS],GangID[MAX_PLAYERS],GangLevel[MAX_PLAYERS],ConvidadoGang[MAX_PLAYERS],InviteToGang[MAX_PLAYERS];
  17.  
  18. /*cores*/
  19. #define amarelo 0xFFFF00AA
  20. #define verde 0x33FF33AA
  21. #define vermelho 0xFF0000AA
  22. #define vermelhoescuro 0xAA3333AA
  23. #define branco 0xFFFFFFAA
  24. #define rosa 0xCCFF00FFAA
  25. #define azul 0x057ABDAA
  26. #define cinza 0xC0C0C0AA
  27. #define yellow 0xFFFF00AA
  28. #define laranja 0xFFA500AA
  29.  
  30. stock FormatExe(Nome[]) {
  31.     new formatgg[40];
  32.     format(formatgg,40,"%s.ini",Nome);
  33.     return formatgg;
  34. }
  35. stock PlayerName(playerid) {
  36.   new name[255];
  37.   GetPlayerName(playerid, name, 255);
  38.   return name;
  39. }
  40.  
  41. // começo do sscanf -------------------------------------------------
  42. stock sscanf(string[], format[], {Float,_}:...)
  43. {
  44.     #if defined isnull
  45.         if (isnull(string))
  46.     #else
  47.         if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
  48.     #endif
  49.         {
  50.             return format[0];
  51.         }
  52.     #pragma tabsize 4
  53.     new
  54.         formatPos = 0,
  55.         stringPos = 0,
  56.         paramPos = 2,
  57.         paramCount = numargs(),
  58.         delim = ' ';
  59.     while (string[stringPos] && string[stringPos] <= ' ')
  60.     {
  61.         stringPos++;
  62.     }
  63.     while (paramPos < paramCount && string[stringPos])
  64.     {
  65.         switch (format[formatPos++])
  66.         {
  67.             case '\0':
  68.             {
  69.                 return 0;
  70.             }
  71.             case 'i', 'd':
  72.             {
  73.                 new
  74.                     neg = 1,
  75.                     num = 0,
  76.                     ch = string[stringPos];
  77.                 if (ch == '-')
  78.                 {
  79.                     neg = -1;
  80.                     ch = string[++stringPos];
  81.                 }
  82.                 do
  83.                 {
  84.                     stringPos++;
  85.                     if ('0' <= ch <= '9')
  86.                     {
  87.                         num = (num * 10) + (ch - '0');
  88.                     }
  89.                     else
  90.                     {
  91.                         return -1;
  92.                     }
  93.                 }
  94.                 while ((ch = string[stringPos]) > ' ' && ch != delim);
  95.                 setarg(paramPos, 0, num * neg);
  96.             }
  97.             case 'h', 'x':
  98.             {
  99.                 new
  100.                     num = 0,
  101.                     ch = string[stringPos];
  102.                 do
  103.                 {
  104.                     stringPos++;
  105.                     switch (ch)
  106.                     {
  107.                         case 'x', 'X':
  108.                         {
  109.                             num = 0;
  110.                             continue;
  111.                         }
  112.                         case '0' .. '9':
  113.                         {
  114.                             num = (num << 4) | (ch - '0');
  115.                         }
  116.                         case 'a' .. 'f':
  117.                         {
  118.                             num = (num << 4) | (ch - ('a' - 10));
  119.                         }
  120.                         case 'A' .. 'F':
  121.                         {
  122.                             num = (num << 4) | (ch - ('A' - 10));
  123.                         }
  124.                         default:
  125.                         {
  126.                             return -1;
  127.                         }
  128.                     }
  129.                 }
  130.                 while ((ch = string[stringPos]) > ' ' && ch != delim);
  131.                 setarg(paramPos, 0, num);
  132.             }
  133.             case 'c':
  134.             {
  135.                 setarg(paramPos, 0, string[stringPos++]);
  136.             }
  137.             case 'f':
  138.             {
  139.                 setarg(paramPos, 0, _:floatstr(string[stringPos]));
  140.             }
  141.             case 'p':
  142.             {
  143.                 delim = format[formatPos++];
  144.                 continue;
  145.             }
  146.             case '\'':
  147.             {
  148.                 new
  149.                     end = formatPos - 1,
  150.                     ch;
  151.                 while ((ch = format[++end]) && ch != '\'') {}
  152.                 if (!ch)
  153.                 {
  154.                     return -1;
  155.                 }
  156.                 format[end] = '\0';
  157.                 if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
  158.                 {
  159.                     if (format[end + 1])
  160.                     {
  161.                         return -1;
  162.                     }
  163.                     return 0;
  164.                 }
  165.                 format[end] = '\'';
  166.                 stringPos = ch + (end - formatPos);
  167.                 formatPos = end + 1;
  168.             }
  169.             case 'u':
  170.             {
  171.                 new
  172.                     end = stringPos - 1,
  173.                     id = 0,
  174.                     bool:num = true,
  175.                     ch;
  176.                 while ((ch = string[++end]) && ch != delim)
  177.                 {
  178.                     if (num)
  179.                     {
  180.                         if ('0' <= ch <= '9')
  181.                         {
  182.                             id = (id * 10) + (ch - '0');
  183.                         }
  184.                         else
  185.                         {
  186.                             num = false;
  187.                         }
  188.                     }
  189.                 }
  190.                 if (num && IsPlayerConnected(id))
  191.                 {
  192.                     setarg(paramPos, 0, id);
  193.                 }
  194.                 else
  195.                 {
  196.                     #if !defined foreach
  197.                         #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
  198.                         #define __SSCANF_FOREACH__
  199.                     #endif
  200.                     string[end] = '\0';
  201.                     num = false;
  202.                     new
  203.                         name[MAX_PLAYER_NAME];
  204.                     id = end - stringPos;
  205.                     foreach (Player, playerid)
  206.                     {
  207.                         GetPlayerName(playerid, name, sizeof (name));
  208.                         if (!strcmp(name, string[stringPos], true, id))
  209.                         {
  210.                             setarg(paramPos, 0, playerid);
  211.                             num = true;
  212.                             break;
  213.                         }
  214.                     }
  215.                     if (!num)
  216.                     {
  217.                         setarg(paramPos, 0, INVALID_PLAYER_ID);
  218.                     }
  219.                     string[end] = ch;
  220.                     #if defined __SSCANF_FOREACH__
  221.                         #undef foreach
  222.                         #undef __SSCANF_FOREACH__
  223.                     #endif
  224.                 }
  225.                 stringPos = end;
  226.             }
  227.             case 's', 'z':
  228.             {
  229.                 new
  230.                     i = 0,
  231.                     ch;
  232.                 if (format[formatPos])
  233.                 {
  234.                     while ((ch = string[stringPos++]) && ch != delim)
  235.                     {
  236.                         setarg(paramPos, i++, ch);
  237.                     }
  238.                     if (!i)
  239.                     {
  240.                         return -1;
  241.                     }
  242.                 }
  243.                 else
  244.                 {
  245.                     while ((ch = string[stringPos++]))
  246.                     {
  247.                         setarg(paramPos, i++, ch);
  248.                     }
  249.                 }
  250.                 stringPos--;
  251.                 setarg(paramPos, i, '\0');
  252.             }
  253.             default:
  254.             {
  255.                 continue;
  256.             }
  257.         }
  258.         while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
  259.         {
  260.             stringPos++;
  261.         }
  262.         while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
  263.         {
  264.             stringPos++;
  265.         }
  266.         paramPos++;
  267.     }
  268.     do
  269.     {
  270.         if ((delim = format[formatPos++]) > ' ')
  271.         {
  272.             if (delim == '\'')
  273.             {
  274.                 while ((delim = format[formatPos++]) && delim != '\'') {}
  275.             }
  276.             else if (delim != 'z')
  277.             {
  278.                 return delim;
  279.             }
  280.         }
  281.     }
  282.     while (delim > ' ');
  283.     return 0;
  284. } // termino do sscanf ----------------------------------------------------------
  285.  
  286. #define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
  287.  
  288. //Stocks
  289. stock FormatGang(nuumb) {
  290.     new ffr[30];format(ffr,20,"gangs/%i.ini",nuumb);
  291.     return ffr;
  292. }
  293. stock CriarGangs()
  294. {
  295.     for(new q=1;q<MAX_GANGS;q++) {
  296.         if(!fexist(FormatGang(q))) {
  297.             new File:Te=fopen(FormatGang(q),io_write);
  298.             fclose(Te);
  299.             dini_IntSet(FormatGang(q),"ComDono",0);
  300.             dini_Set(FormatGang(q),"Nome","Livre");
  301.             dini_Set(FormatGang(q),"Lider","Livre");
  302.             dini_Set(FormatGang(q),"Lema","Sem_lema");
  303.             dini_Set(FormatGang(q),"Cor","FFFF00FF");
  304.             dini_IntSet(FormatGang(q),"Grana",0);
  305.             dini_IntSet(FormatGang(q),"Skin1",0);
  306.             dini_IntSet(FormatGang(q),"Skin2",0);
  307.             dini_IntSet(FormatGang(q),"Skin3",0);
  308.             dini_IntSet(FormatGang(q),"Skin4",0);
  309.             dini_IntSet(FormatGang(q),"Skin5",0);
  310.             new NN[20],Nn[20];
  311.             for(new f=1;f<MAX_GANG_PLAYERS;f++) {
  312.                 format(NN,20,"Membro%i",f);
  313.                 format(Nn,20,"MembroL%i",f);
  314.                 dini_Set(FormatGang(q),NN,"Livre");
  315.                 dini_IntSet(FormatGang(q),Nn,0);
  316.             }
  317.         }
  318.     }
  319.     return 0;
  320. }
  321.  
  322. #define FILTERSCRIPT
  323. #if defined FILTERSCRIPT
  324.  
  325. public OnFilterScriptInit()
  326. {
  327.     print("\n==============================================");
  328.     print(" Gang System  By SuB_ZeRo0_  [0.3]");
  329.     print("   Versao: 1.2.0c || PREMIUM: NAO");
  330.     print("    Comandos PREMIUM: //---=---\\");
  331.     print("==============================================\n");
  332.     //Anti-Descompiler
  333.     new a[][15] = { "?","0","?" };
  334.     #pragma unused a
  335.     new b[][15] = { "?","?" };
  336.     #pragma unused b
  337.     new c[][10] = { "?","?","?"};
  338.     #pragma unused c
  339.     //Fim
  340.     CriarGangs();
  341.     return 1;
  342. }
  343.  
  344. public OnFilterScriptExit()
  345. {
  346.     return 1;
  347. }
  348.  
  349. #else
  350.  
  351. main()
  352. {
  353. }
  354.  
  355. #endif
  356.  
  357. public OnPlayerConnect(playerid)
  358. {
  359.     TemGang[playerid]=0;
  360.     GangID[playerid]=dini_Int(FormatExe(PlayerName(playerid)),"IDGang");
  361.     if(GangID[playerid]!=0) {
  362.         if(dini_Int(FormatGang(GangID[playerid]),"ComDono")==0) {
  363.             dini_IntSet(FormatExe(PlayerName(playerid)),"IDGang",0);
  364.             GangID[playerid]=0;
  365.         }
  366.     }
  367.     if(GangID[playerid]!=0) {
  368.         SetPlayerTeam(playerid,GangID[playerid]);
  369.         new formattt[13];format(formattt,13,"%sFF",dini_Get(FormatGang(GangID[playerid]),"Cor"));
  370.         SetPlayerColor(playerid,HexToInt(formattt));
  371.         new fddd[15],fddd2[15];
  372.         for(new yt=1;yt<MAX_GANG_PLAYERS;yt++) {
  373.             format(fddd,15,"Membro%d",yt);
  374.             if(!strcmp(dini_Get(FormatGang(GangID[playerid]),fddd),PlayerName(playerid))) {
  375.                 format(fddd2,15,"MembroL%d",yt);
  376.                 GangLevel[playerid]=dini_Int(FormatGang(GangID[playerid]),fddd2);
  377.             }
  378.         }
  379.         if(!strcmp(dini_Get(FormatGang(GangID[playerid]),"Lider"),PlayerName(playerid))) {GangLevel[playerid]=5;}
  380.         new formattd[10];
  381.         format(formattd,10,"Skin%i",GangLevel[playerid]);
  382.         SetPlayerSkin(playerid,strval(dini_Get(FormatGang(GangID[playerid]),formattd)));
  383.         TemGang[playerid]=1;
  384.     }
  385.     ConvidadoGang[playerid]=0;
  386.     InviteToGang[playerid]=0;
  387.     LevelPM[playerid]=0;
  388.     return 1;
  389. }
  390.  
  391. public OnPlayerText(playerid, text[])
  392. {
  393.     if(text[0]=='!'&&text[1]!='!'&&GangID[playerid]!=0) {
  394.         new msgformata[128];
  395.         strdel(text,0,1);
  396.         format(msgformata,128,"[%s] %s (ID:%d): %s",dini_Get(FormatGang(GangID[playerid]),"Nome"),PlayerName(playerid),playerid,text);
  397.         for(new d=0;d<MAX_PLAYERS;d++) {
  398.             if(GangID[playerid]==GangID[d]&&IsPlayerConnected(d)) {
  399.                 SendClientMessage(d,laranja,msgformata);
  400.             }
  401.         }
  402.         return 0;
  403.     }
  404.     if(text[0]=='!'&&text[1]=='!'&&GangID[playerid]!=0&&GangLevel[playerid]==5) {
  405.         new msgformata[128],msgformata2[128];
  406.         strdel(text,0,2);
  407.         format(msgformata,128,"Líder: %s",text);
  408.         format(msgformata2,128,"~b~Líder~n~~w~%s",text);
  409.         for(new d=0;d<MAX_PLAYERS;d++) {
  410.             if(GangID[playerid]==GangID[d]&&IsPlayerConnected(d)) {
  411.                 SendClientMessage(d,azul,msgformata);
  412.                 GameTextForPlayer(d,msgformata2,4000,5);
  413.             }
  414.         }
  415.         return 0;
  416.     }
  417.     return 1;
  418. }
  419.  
  420. public OnPlayerCommandText(playerid, cmdtext[])
  421. {
  422.     dcmd(gang,4,cmdtext);
  423.     if(!strcmp(cmdtext,"/grana")) {
  424.         GivePlayerMoney(playerid,10000);
  425.     }
  426.     return 0;
  427. }
  428.  
  429. public OnPlayerSpawn(playerid)
  430. {
  431.     SetTimerEx("FixGang",3000,false,"i",playerid);
  432.     return 1;
  433. }
  434.  
  435. forward FixGang(playerid);
  436. public FixGang(playerid) {
  437.     if(GangID[playerid]!=0) {
  438.         new formattt[13];format(formattt,13,"%sFF",dini_Get(FormatGang(GangID[playerid]),"Cor"));
  439.         SetPlayerColor(playerid,HexToInt(formattt));
  440.         if(GangLevel[playerid]==1) {SetPlayerSkin(playerid,strval(dini_Get(FormatGang(GangID[playerid]),"Skin1")));}
  441.         if(GangLevel[playerid]==2) {SetPlayerSkin(playerid,strval(dini_Get(FormatGang(GangID[playerid]),"Skin2")));}
  442.         if(GangLevel[playerid]==3) {SetPlayerSkin(playerid,strval(dini_Get(FormatGang(GangID[playerid]),"Skin3")));}
  443.         if(GangLevel[playerid]==4) {SetPlayerSkin(playerid,strval(dini_Get(FormatGang(GangID[playerid]),"Skin4")));}
  444.         if(GangLevel[playerid]==5) {SetPlayerSkin(playerid,strval(dini_Get(FormatGang(GangID[playerid]),"Skin5")));}
  445.     }
  446.     return 1;
  447. }
  448.  
  449. dcmd_gang(playerid,params[])
  450. {
  451.     new wet[50];
  452.     if(sscanf(params,"s",wet)) {
  453.             SendClientMessage(playerid,amarelo,"USO: /gang [Criar/Convite/Kick/Entrar/Banco/Sair/Info/Skin/Cor/Lema/Membros/Level/Atk/Lider]");
  454.             SendClientMessage(playerid,amarelo,"Leveis na Gang: 0- Visitante / 1- Recruta / 2- Membro / 3- Comandante / 4- Sub-Lider");
  455.             return 1;
  456.     }
  457.     if(!strcmp(wet,"criar")) {
  458.         if(TemGang[playerid]==1) return SendClientMessage(playerid,amarelo,"[GANG] Você já participa de uma gang, saia dela!");
  459.         new MaxGG;
  460.         for(new w=1;w<MAX_GANGS;w++) {
  461.             if(dini_Int(FormatGang(w),"ComDono")==1) {
  462.                 MaxGG++;
  463.             }
  464.         }
  465.         if(MaxGG>=MAX_GANGS) return SendClientMessage(playerid,amarelo,"[GANG] O limite máximo de gangs criadas, foi atingido!");
  466.         if(GetPlayerMoney(playerid)<10000) return SendClientMessage(playerid,amarelo,"[GANG] Você deve ter R$10.000 para criar uma gang!");
  467.         ShowPlayerDialog(playerid,599,DIALOG_STYLE_INPUT,"Gang - Criar","Digite o nome da gang a baixo:\nSerá cobrada uma taxa de $10000 para criar sua gang!","Criar","Sair");
  468.     }
  469.     if(!strcmp(wet,"kick")) {
  470.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  471.         if(GangLevel[playerid]<3) return SendClientMessage(playerid,amarelo,"[GANG] Você deve ser comandante, sub-líder ou líder da gang para kickar pessoas!");
  472.         ShowPlayerDialog(playerid,539,DIALOG_STYLE_INPUT,"Gang - Kick","Digite o ID a baixo:","Kickar","Sair");
  473.     }
  474.     if(!strcmp(wet,"convite")) {
  475.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  476.         if(GangLevel[playerid]<2) return SendClientMessage(playerid,amarelo,"[GANG] Você deve ser membro, comandante, sub-líder ou líder da gang para convidar pessoas!");
  477.         new MembroMax,NN2[20];
  478.         for(new f=1;f<MAX_GANG_PLAYERS;f++) {
  479.             format(NN2,20,"Membro%i",f);
  480.             if(strcmp(dini_Get(FormatGang(f),NN2),"Livre")) {
  481.                 MembroMax++;
  482.             }
  483.         }
  484.         if(MembroMax>=MAX_GANG_PLAYERS) return SendClientMessage(playerid,amarelo,"[GANG] O limite máximo de jogadores em uma gang foi atingido!");
  485.         new ResultM;
  486.         for(new f=0;f<MAX_PLAYERS;f++) {
  487.             if(ConvidadoGang[f]==GangID[playerid]) {
  488.                 ResultM++;
  489.             }
  490.         }
  491.         if(ResultM>=(MAX_CONVIDADOS-1)) return SendClientMessage(playerid,amarelo,"[GANG] O limite máximo de convidados em uma gang foi atingido!");
  492.         ShowPlayerDialog(playerid,598,DIALOG_STYLE_INPUT,"Gang - Convite","Digite o ID do jogador a baixo:","Convidar","Sair");
  493.     }
  494.     if(!strcmp(wet,"info")) {
  495.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  496.         new formatmsgbox[128];
  497.         new nmn[25];strcat(nmn,dini_Get(FormatGang(GangID[playerid]),"Nome"));
  498.         new leader[25];strcat(leader,dini_Get(FormatGang(GangID[playerid]),"Lider"));
  499.         new membersa,dfgg[25];
  500.         for(new sd=1;sd<MAX_GANG_PLAYERS;sd++) {
  501.             format(dfgg,25,"Membro%d",sd);
  502.             if(strcmp(dini_Get(FormatGang(GangID[playerid]),dfgg),"Livre")) {
  503.                 membersa++;
  504.             }
  505.         }
  506.         new lema[128];
  507.         strcat(lema,(dini_Get(FormatGang(GangID[playerid]),"Lema")));
  508.         if(strlen(lema)<25) {format(formatmsgbox,128,"Informações:\n\nNome: %s\nLíder: %s\nID da Gang: %d\nMembros: %d/%d\n\nLema: %s",nmn,leader,GangID[playerid],membersa,(MAX_GANG_PLAYERS-1),lema);}
  509.         new lemap1[35],lemap2[35];
  510.         strmid(lemap1,lema,0,25);
  511.         strmid(lemap2,lema,25,60);
  512.         if(strlen(lema)>24&&strlen(lema)<50) {format(formatmsgbox,128,"Informações:\n\nNome: %s\nLíder: %s\nMembros: %d/%d\n\nLema: %s\n%s",nmn,leader,membersa,MAX_GANG_PLAYERS,lemap1,lemap2);}
  513.         new lemap11[35],lemap12[35],lemap13[35];
  514.         strmid(lemap11,lema,0,25);
  515.         strmid(lemap12,lema,25,50);
  516.         strmid(lemap13,lema,50,80);
  517.         if(strlen(lema)>49) {format(formatmsgbox,128,"Informações:\n\nNome: %s\nLíder: %s\nMembros: %d/%d\n\nLema: %s\n%s\n%s",nmn,leader,membersa,MAX_GANG_PLAYERS,lemap11,lemap12,lemap13);}
  518.         ShowPlayerDialog(playerid,597,DIALOG_STYLE_MSGBOX,"Gang - Info",formatmsgbox,"Ok","Sair");
  519.     }
  520.     if(!strcmp(wet,"skin")) {
  521.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  522.         if(GangLevel[playerid]<5) return SendClientMessage(playerid,amarelo,"[GANG] Você deve ser líder da gang para mudar os skins!");
  523.         ShowPlayerDialog(playerid,596,DIALOG_STYLE_LIST,"Gang - Skin","Líder\nSub-Líder\nComandante\nMembro\nRecruta","Mudar","Sair");
  524.     }
  525.     if(!strcmp(wet,"cor")) {
  526.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  527.         if(GangLevel[playerid]<5) return SendClientMessage(playerid,amarelo,"[GANG] Você deve ser líder da gang para mudar os skins!");
  528.         ShowPlayerDialog(playerid,595,DIALOG_STYLE_INPUT,"Gang - Cor","Coloque o código da cor a baixo: (Apenas o do meio, 0x FFFF00 AA - Código: RRGGBB [RGB])\nNão escolha preto, pois poderá bugar.","Mudar","Sair");
  529.     }
  530.     if(!strcmp(wet,"lema")) {
  531.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  532.         if(GangLevel[playerid]<5) return SendClientMessage(playerid,amarelo,"[GANG] Você deve ser líder da gang para mudar os skins!");
  533.         ShowPlayerDialog(playerid,594,DIALOG_STYLE_INPUT,"Gang - Lema","Coloque o lema a baixo:","Mudar","Sair");
  534.     }
  535.     if(!strcmp(wet,"level")) {
  536.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  537.         if(GangLevel[playerid]<3) return SendClientMessage(playerid,amarelo,"[GANG] Você no mínimo comandante da gang para mudar os leveis!");
  538.         new ftt[15],JKk;
  539.         for(new y=1;y<MAX_GANG_PLAYERS;y++) {
  540.             format(ftt,15,"Membro%d",y);
  541.             if(!strcmp(dini_Get(FormatGang(GangID[playerid]),ftt),"Livre")) {
  542.                 JKk++;
  543.             }
  544.         }
  545.         if(JKk==0) return SendClientMessage(playerid,amarelo,"[GANG] Sem vagas de membros!");
  546.         ShowPlayerDialog(playerid,593,DIALOG_STYLE_INPUT,"Gang - Level","Coloque o ID do jogador a baixo:","Continuar","Sair");
  547.     }
  548.     if(!strcmp(wet,"membros")) {
  549.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  550.         new membrosl[256],membrosl2[500];
  551.         for(new lea=0;lea<MAX_PLAYERS;lea++) {
  552.             if(GangID[playerid]==GangID[lea]) {
  553.                 if(GangLevel[lea]==5) {
  554.                     new novo[40];
  555.                     format(novo,40,"Líder: %s\n",PlayerName(lea));
  556.                     strcat(membrosl,novo);
  557.                 }
  558.             }
  559.         }
  560.         for(new g=1;g<MAX_GANG_PLAYERS;g++) {
  561.             new novo[40],nnnn[10];
  562.             format(nnnn,10,"Membro%i",g);
  563.             if(GangLevel[g]==4) {format(novo,40,"Membro %i: %s (Sub-Líder)\n",g,dini_Get(FormatGang(g),nnnn));}
  564.             if(GangLevel[g]==3) {format(novo,40,"Membro %i: %s (Comandante)\n",g,dini_Get(FormatGang(g),nnnn));}
  565.             if(GangLevel[g]==2) {format(novo,40,"Membro %i: %s (Membro)\n",g,dini_Get(FormatGang(g),nnnn));}
  566.             if(GangLevel[g]==1) {format(novo,40,"Membro %i: %s (Recruta)\n",g,dini_Get(FormatGang(g),nnnn));}
  567.             strcat(membrosl,novo);
  568.         }
  569.         for(new h=1;h<MAX_CONVIDADOS;h++) {
  570.             if(ConvidadoGang[h]==GangID[playerid]) {
  571.                 new novo[40];
  572.                 format(novo,40,"Convidado %i: %s\n",h,PlayerName(h));
  573.                 strcat(membrosl,novo);
  574.             }
  575.         }
  576.         format(membrosl2,500,"Membros de sua gang (online):\n\n%s",membrosl);
  577.         ShowPlayerDialog(playerid,592,DIALOG_STYLE_MSGBOX,"Gang - Membros",membrosl2,"Ok","Sair");
  578.     }
  579.     if(!strcmp(wet,"atk")) {
  580.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  581.         if(GangLevel[playerid]<3) return SendClientMessage(playerid,amarelo,"[GANG] Você no mínimo deve ser comandante da gang para dar /gang  atk!");
  582.         for(new d=0;d<MAX_PLAYERS;d++) {
  583.             printf("%d",d);
  584.             if(GangID[d]==GangID[playerid]) {
  585.                 SetPlayerTeam(d,GangID[playerid]);
  586.             }
  587.         }
  588.         SendClientMessage(playerid,amarelo,"[GANG] Anti-TK atualizado.");
  589.     }
  590.     if(!strcmp(wet,"lider")) {
  591.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  592.         if(GangLevel[playerid]<5) return SendClientMessage(playerid,amarelo,"[GANG] Você no mínimo líder da gang para mudar os leveis!");
  593.         ShowPlayerDialog(playerid,591,DIALOG_STYLE_INPUT,"Gang - Líder","Coloque o ID para quem você quer passar o Líder de sua gang.","Ok","Sair");
  594.     }
  595.     if(!strcmp(wet,"entrar")) {
  596.         if(TemGang[playerid]==1) return SendClientMessage(playerid,amarelo,"[GANG] Você já está em uma gang!");
  597.         if(InviteToGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não foi convidado a entrar em nenhuma gang!");
  598.         GangID[playerid]=InviteToGang[playerid];
  599.         SetPlayerTeam(playerid,GangID[playerid]);
  600.         if(!fexist(FormatExe(PlayerName(playerid)))) {new File:Kb=fopen(FormatExe(PlayerName(playerid)),io_write);fclose(Kb);}
  601.         dini_IntSet(FormatExe(PlayerName(playerid)),"IDGang",GangID[playerid]);
  602.         new formattt[13];format(formattt,13,"%sFF",dini_Get(FormatGang(GangID[playerid]),"Cor"));
  603.         SetPlayerColor(playerid,HexToInt(formattt));
  604.         ConvidadoGang[playerid]=GangID[playerid];
  605.         new strmenn[128],nm1[25],strmenn2[128];
  606.         GetPlayerName(playerid,nm1,25);
  607.         TemGang[playerid]=1;
  608.         format(strmenn,128,"[GANG] %s (ID:%d) entrou na gang!",nm1,playerid);
  609.         format(strmenn2,128,"[GANG] Você entrou na gang: %s!",dini_Get(FormatGang(GangID[playerid]),"Nome"));
  610.         SendClientMessage(playerid,laranja,strmenn2);
  611.         for(new allgp=0;allgp<MAX_PLAYERS;allgp++) {
  612.             if(GangID[playerid]==GangID[allgp] || GangID[playerid]==ConvidadoGang[allgp]) {
  613.                 SendClientMessage(allgp,laranja,strmenn);
  614.             }
  615.         }
  616.     }
  617.     if(!strcmp(wet,"sair")) {
  618.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  619.         if(GangLevel[playerid]==5) {
  620.             fremove(FormatGang(GangID[playerid]));
  621.             CriarGangs();
  622.         }
  623.         SetPlayerTeam(playerid,(500+playerid));
  624.         new strmenn[128],nm1[25],strmenn2[128];
  625.         GetPlayerName(playerid,nm1,25);
  626.         format(strmenn,128,"[GANG] %s (ID:%d) saiu da gang!",nm1,playerid);
  627.         format(strmenn2,128,"[GANG] Você saiu da gang: %s!",dini_Get(FormatGang(GangID[playerid]),"Nome"));
  628.         SendClientMessage(playerid,laranja,strmenn2);
  629.         for(new allgp=0;allgp<MAX_PLAYERS;allgp++) {
  630.             if(GangID[playerid]==GangID[allgp] || GangID[playerid]==ConvidadoGang[allgp]) {
  631.                 SendClientMessage(allgp,laranja,strmenn);
  632.             }
  633.         }
  634.         if(InviteToGang[playerid]==GangID[playerid]) {InviteToGang[playerid]=0;}
  635.         if(ConvidadoGang[playerid]==GangID[playerid]) {ConvidadoGang[playerid]=0;}
  636.         GangID[playerid]=0;
  637.         TemGang[playerid]=0;
  638.     }
  639.     if(!strcmp(wet,"banco")) {
  640.         if(TemGang[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem gang!");
  641.         if(GangLevel[playerid]==0) return SendClientMessage(playerid,amarelo,"[GANG] Você deve ser de recruta para acima, para usar esse comando!");
  642.         if(dini_Int(FormatGang(GangID[playerid]),"Banco")==1) return SendClientMessage(playerid,amarelo,"[GANG] Banco bloqueado pelo Líder!");
  643.         if(dini_Int(FormatGang(GangID[playerid]),"LBanco")>GangLevel[playerid]) return SendClientMessage(playerid,amarelo,"[GANG] Seu rank na gang não é alto o suficiente!");
  644.         new IntId=GetPlayerInterior(playerid);new IntC;
  645.         if((IntId==16) || (IntId==17) || (IntId==18) || (IntId==4) || (IntId==6) || (IntId==10)) {IntC++;}
  646.         if(IntC==0) return SendClientMessage(playerid,amarelo,"[GANG] Você não está em uma 24/7!");
  647.         ShowPlayerDialog(playerid,519,DIALOG_STYLE_LIST,"Gang - Banco","Saldo\nSacar\nDepositar\nFunções Líder","Ok","Sair");
  648.     }
  649.     return 1;
  650. }
  651.  
  652. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  653. {
  654.     if(dialogid==519&&response) {
  655.         if(listitem==0) {
  656.             new formatsaldo[110];
  657.             format(formatsaldo,110,"Bem Vindo ao banco de sua gang!\n\nSaldo: R$%d",dini_Int(FormatGang(GangID[playerid]),"QBanco"));
  658.             ShowPlayerDialog(playerid,518,DIALOG_STYLE_MSGBOX,"Gang - Banco - Saldo",formatsaldo,"Ok","Sair");
  659.         }
  660.         if(listitem==1) {ShowPlayerDialog(playerid,517,DIALOG_STYLE_INPUT,"Gang - Banco - Sacar","Digite a quantia que deseja sacar:","Ok","Sair");}
  661.         if(listitem==2) {ShowPlayerDialog(playerid,516,DIALOG_STYLE_INPUT,"Gang - Banco - Depositar","Digite a quantia que deseja depositar:","Ok","Sair");}
  662.         if(listitem==3) {ShowPlayerDialog(playerid,515,DIALOG_STYLE_LIST,"Gang - Banco - Funções Líder","Status\nLevel mínimo","Ok","Sair");}
  663.     }
  664.     if(dialogid==517&&response) {
  665.         new valor=strval(inputtext);
  666.         if(!strlen(inputtext)) return SendClientMessage(playerid,amarelo,"[GANG] Coloque um número!");
  667.         if(valor<1) return SendClientMessage(playerid,amarelo,"[GANG] O valor não deve ser menor que R$1!");
  668.         if((dini_Int(FormatGang(GangID[playerid]),"QBanco")-valor)<0) return SendClientMessage(playerid,amarelo,"[GANG] A conta da gang não possui toda essa quantia!");
  669.         new antv=dini_Int(FormatGang(GangID[playerid]),"QBanco");
  670.         dini_IntSet(FormatGang(GangID[playerid]),"QBanco",(antv-valor));
  671.         GivePlayerMoney(playerid,valor);
  672.     }
  673.     if(dialogid==516&&response) {
  674.         new valor=strval(inputtext);
  675.         if(!strlen(inputtext)) return SendClientMessage(playerid,amarelo,"[GANG] Coloque um número!");
  676.         if(valor<1) return SendClientMessage(playerid,amarelo,"[GANG] O valor não deve ser menor que R$1!");
  677.         if(valor>GetPlayerMoney(playerid)) return SendClientMessage(playerid,amarelo,"[GANG] Você não tem todo esse dinheiro!");
  678.         new antv=dini_Int(FormatGang(GangID[playerid]),"QBanco");
  679.         dini_IntSet(FormatGang(GangID[playerid]),"QBanco",(antv+valor));
  680.         GivePlayerMoney(playerid,-(valor));
  681.     }
  682.     if(dialogid==515&&response) {
  683.         if(listitem==0) {ShowPlayerDialog(playerid,514,DIALOG_STYLE_MSGBOX,"Gang - Banco - Funções Líder","Você deseja trancar o banco?","Nao","Sim");}
  684.         if(listitem==1) {ShowPlayerDialog(playerid,513,DIALOG_STYLE_LIST,"Gang - Banco - Funções Líder","Recruta\nMembro\nComandante\nSub-Líder\nLíder","Ok","Sair");}
  685.     }
  686.     if(dialogid==514&&response) {
  687.         if(response) return dini_IntSet(FormatGang(GangID[playerid]),"Banco",0);
  688.         dini_IntSet(FormatGang(GangID[playerid]),"Banco",1);
  689.     }
  690.     if(dialogid==513&&response) {
  691.         dini_IntSet(FormatGang(GangID[playerid]),"LBanco",listitem+1);
  692.     }
  693.     if(dialogid==539&&response) {
  694.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Coloque o nome da gang!");
  695.         if(GangID[playerid]!=GangID[strval(inputtext)]) return SendClientMessage(playerid,vermelho,"[GANG] Este jogador não pertençe a sua gang!");
  696.         if(GangLevel[strval(inputtext)]>=GangLevel[playerid]) return SendClientMessage(playerid,vermelho,"[GANG] Você não pode kickar pessoas com o mesmo ou level maior!");
  697.         SetPlayerTeam(playerid,(500+strval(inputtext)));
  698.         if(GangLevel[strval(inputtext)]>0) {
  699.             new yuu[15],yuu2[15];
  700.             for(new gh=1;gh<MAX_GANG_PLAYERS;gh++) {
  701.                 format(yuu,15,"Membro%d",gh);format(yuu2,15,"MembroL%d",gh);
  702.                 dini_Set(FormatGang(GangID[strval(inputtext)]),yuu,"Livre");
  703.                 dini_IntSet(FormatGang(GangID[strval(inputtext)]),yuu2,0);
  704.             }
  705.         }
  706.         new strmenn[128],nm1[25],nm2[25];
  707.         GetPlayerName(playerid,nm1,25);GetPlayerName(strval(inputtext),nm2,25);
  708.         format(strmenn,128,"[GANG] %s (ID:%d) kickou %s (ID:%d) da gang!",nm1,playerid,nm2,strval(inputtext));
  709.         for(new allgp=0;allgp<MAX_PLAYERS;allgp++) {
  710.             if(GangID[playerid]==GangID[allgp] || GangID[playerid]==ConvidadoGang[allgp]) {
  711.                 SendClientMessage(allgp,laranja,strmenn);
  712.             }
  713.         }
  714.         GangLevel[strval(inputtext)]=0;
  715.         SetPlayerColor(strval(inputtext),cinza);
  716.         ConvidadoGang[strval(inputtext)]=0;
  717.         GangID[strval(inputtext)]=0;
  718.         TemGang[strval(inputtext)]=0;
  719.     }
  720.     if(dialogid==599&&response) {
  721.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Coloque o nome da gang!");
  722.         if(strlen(inputtext)>20) return SendClientMessage(playerid,vermelho,"[GANG] Nome muito grande!");
  723.         format(NomeEscol[playerid],25,"%s",inputtext);
  724.         ShowPlayerDialog(playerid,600,DIALOG_STYLE_INPUT,"Gang - Cor","Coloque o código da cor a baixo: (Apenas o do meio, 0x FFFF00 AA)\nNão escolha preto, pois poderá bugar.","Criar","Sair");
  725.     }
  726.     if(dialogid==600&&response) {
  727.         if(strlen(inputtext)<6) return SendClientMessage(playerid,vermelho,"[GANG] O código da cor deve-se ter 6 letras!");
  728.         if(strlen(inputtext)>6) return SendClientMessage(playerid,vermelho,"[GANG] O código da cor deve-se ter 6 letras!");
  729.         new GangFree;
  730.         for(new t=MAX_GANGS;t>=1;t--) {
  731.             if(dini_Int(FormatGang(t),"ComDono")==0) {
  732.                 GangFree=t;
  733.             }
  734.         }
  735.         if(!fexist(FormatExe(PlayerName(playerid)))) {new File:Kb=fopen(FormatExe(PlayerName(playerid)),io_write);fclose(Kb);}
  736.         dini_IntSet(FormatExe(PlayerName(playerid)),"IDGang",GangFree);
  737.         dini_IntSet(FormatGang(GangFree),"ComDono",1);
  738.         TemGang[playerid]=1;
  739.         dini_Set(FormatGang(GangFree),"Nome",NomeEscol[playerid]);
  740.         new formated[11];format(formated,11,"%sFF",inputtext);
  741.         dini_Set(FormatGang(GangFree),"Cor",formated);
  742.         new fimm[15];
  743.         for(new r=1;r<MAX_GANG_PLAYERS;r++) {
  744.             format(fimm,15,"Membro%d",r);
  745.             dini_Set(FormatGang(GangFree),fimm,"Livre");
  746.         }
  747.         for(new s=1;s<MAX_GANG_PLAYERS;s++) {
  748.             format(fimm,15,"MembroL%d",s);
  749.             dini_Set(FormatGang(GangFree),fimm,"0");
  750.         }
  751.         dini_IntSet(FormatGang(GangFree),"Skin1",0);
  752.         dini_IntSet(FormatGang(GangFree),"Skin2",0);
  753.         dini_IntSet(FormatGang(GangFree),"Skin3",0);
  754.         dini_IntSet(FormatGang(GangFree),"Skin4",0);
  755.         dini_IntSet(FormatGang(GangFree),"Skin5",0);
  756.         dini_Set(FormatGang(GangFree),"Lider",PlayerName(playerid));
  757.         dini_IntSet(FormatGang(GangFree),"Grana",0);
  758.         dini_Set(FormatGang(GangFree),"Lema","Sem Lema.");
  759.         GangID[playerid]=GangFree;
  760.         GangLevel[playerid]=5;
  761.         SetPlayerColor(playerid,HexToInt(formated));
  762.         GivePlayerMoney(playerid,-10000);
  763.         new ultimamsg[128];
  764.         format(ultimamsg,125,"[GANG] Você criou a gang: '%s' com sucesso!",NomeEscol[playerid]);
  765.         SendClientMessage(playerid,laranja,ultimamsg);
  766.     }
  767.     if(dialogid==593&&response) {
  768.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Coloque o ID!");
  769.         else if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid,vermelho,"[GANG] Jogador não conectado!");
  770.         else if(GangID[strval(inputtext)]!=GangID[playerid]) return SendClientMessage(playerid,vermelho,"[GANG] Coloque um jogador que participe de sua gang!");
  771.         else if(GangLevel[strval(inputtext)]>=GangLevel[playerid]) return SendClientMessage(playerid,vermelho,"[GANG] Coloque um jogador com cargo menor que o seu!");
  772.         else {
  773.             LevelPM[playerid]=strval(inputtext);
  774.             ShowPlayerDialog(playerid,543,DIALOG_STYLE_LIST,"Gang - Level","Convidado\nRecruta\nMembro\nComandante\nSub-Líder","Ok","Sair");
  775.         }
  776.     }
  777.     if(dialogid==543&&response) {
  778.         if(listitem>=GangLevel[playerid]) return SendClientMessage(playerid,vermelho,"[GANG] O level não pode ser igual ou maior que seu level!");
  779.         GangLevel[LevelPM[playerid]]=listitem;
  780.         new strmenn[128],nm1[25],nm2[25],nivelb[30];
  781.         GetPlayerName(playerid,nm1,25);GetPlayerName(LevelPM[playerid],nm2,25);
  782.         if(listitem==0) {strcat(nivelb,"Convidado");}
  783.         if(listitem==1) {strcat(nivelb,"Recruta");}
  784.         if(listitem==2) {strcat(nivelb,"Membro");}
  785.         if(listitem==3) {strcat(nivelb,"Comandante");}
  786.         if(listitem==4) {strcat(nivelb,"Sub-Líder");}
  787.         format(strmenn,128,"[GANG] %s (ID:%d) mudou o level de %s (ID:%d) para: %s!",nm1,playerid,nm2,LevelPM[playerid],nivelb);
  788.         for(new allgp=0;allgp<MAX_PLAYERS;allgp++) {
  789.             if(GangID[playerid]==GangID[allgp] || GangID[playerid]==ConvidadoGang[allgp]) {
  790.                 SendClientMessage(allgp,laranja,strmenn);
  791.             }
  792.         }
  793.         new lkk[15],Nmmn;
  794.         for(new po=1;po<MAX_GANG_PLAYERS;po++) {
  795.             format(lkk,15,"Membro%d",po);
  796.             if(!strcmp(dini_Get(FormatGang(GangID[playerid]),lkk),PlayerName(LevelPM[playerid]))) {
  797.                 Nmmn++;
  798.             }
  799.         }
  800.         if(Nmmn==0) {
  801.             new addat,fg[15];
  802.             for(new fd=MAX_GANG_PLAYERS;fd>=1;fd--) {
  803.                 format(fg,15,"Membro%d",fd);
  804.                 if(!strcmp(dini_Get(FormatGang(GangID[playerid]),fg),"Livre")) {
  805.                     addat=fd;
  806.                 }
  807.             }
  808.             new number1[15],number2[15];
  809.             format(number1,15,"Membro%d",addat);
  810.             format(number2,15,"MembroL%d",addat);
  811.             InviteToGang[playerid]=0;
  812.             dini_IntSet(FormatGang(GangID[playerid]),number2,listitem);
  813.             dini_Set(FormatGang(GangID[playerid]),number1,PlayerName(LevelPM[playerid]));
  814.         }
  815.         if(Nmmn>0) {
  816.             if(listitem==0) {
  817.                 new ghhh3[15];
  818.                 for(new v=1;v<MAX_GANG_PLAYERS;v++) {
  819.                     format(ghhh3,15,"Membro%d",v);
  820.                     if(!strcmp(dini_Get(FormatGang(GangID[playerid]),ghhh3),PlayerName(strval(inputtext)))) {
  821.                         new ghhh2[15];format(ghhh2,15,"MembroL%d",v);
  822.                         dini_IntSet(FormatGang(GangID[playerid]),ghhh2,0);
  823.                         dini_Set(FormatGang(GangID[playerid]),ghhh3,"Livre");
  824.                     }
  825.                 }
  826.                 ConvidadoGang[LevelPM[playerid]]=GangID[playerid];
  827.                 return 1;
  828.             }
  829.             new ghhh[15];
  830.             for(new v=1;v<MAX_GANG_PLAYERS;v++) {
  831.                 format(ghhh,15,"Membro%d",v);
  832.                 if(!strcmp(dini_Get(FormatGang(GangID[playerid]),ghhh),PlayerName(strval(inputtext)))) {
  833.                     new ghhh2[15];format(ghhh2,15,"MembroL%d",v);
  834.                     dini_IntSet(FormatGang(GangID[playerid]),ghhh2,listitem);
  835.                 }
  836.             }
  837.         }
  838.     }
  839.     if(dialogid==594&&response) {
  840.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Escreva um lema!");
  841.         else {
  842.             dini_Set(FormatGang(GangID[playerid]),"Lema",inputtext);
  843.             new novolema[128];
  844.             format(novolema,128,"[GANG] Novo lema: %s",inputtext);
  845.             for(new all=0;all<MAX_PLAYERS;all++) {
  846.                 if(GangID[all]==GangID[playerid]&&GangLevel[all]==2) {
  847.                     SendClientMessage(all,laranja,novolema);
  848.                 }
  849.             }
  850.         }
  851.     }
  852.     if(dialogid==595&&response) {
  853.         if(strlen(inputtext)<6) return SendClientMessage(playerid,vermelho,"[GANG] O código da cor deve-se ter 6 letras!");
  854.         if(strlen(inputtext)>6) return SendClientMessage(playerid,vermelho,"[GANG] O código da cor deve-se ter 6 letras!");
  855.         new formatddd[13];
  856.         format(formatddd,13,"%sFF",inputtext);
  857.         dini_Set(FormatGang(GangID[playerid]),"Cor",inputtext);
  858.         for(new all=0;all<MAX_PLAYERS;all++) {
  859.             if(GangID[all]==GangID[playerid]) {
  860.                 SetPlayerColor(all,HexToInt(formatddd));
  861.             }
  862.         }
  863.     }
  864.     if(dialogid==555&&response) {
  865.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Coloque o ID da Skin!");
  866.         if(strval(inputtext)<0) return SendClientMessage(playerid,vermelho,"[GANG] Skin entre 0 e 299!");
  867.         if(strval(inputtext)>299) return SendClientMessage(playerid,vermelho,"[GANG] Skin entre 0 e 299!");
  868.         dini_IntSet(FormatGang(GangID[playerid]),"Skin1",strval(inputtext));
  869.         for(new all=0;all<MAX_PLAYERS;all++) {
  870.             if(GangID[all]==GangID[playerid]&&GangLevel[all]==1) {
  871.                 SetPlayerSkin(all,strval(inputtext));
  872.             }
  873.         }
  874.     }
  875.     if(dialogid==556&&response) {
  876.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Coloque o ID da Skin!");
  877.         if(strval(inputtext)<0) return SendClientMessage(playerid,vermelho,"[GANG] Skin entre 0 e 299!");
  878.         if(strval(inputtext)>299) return SendClientMessage(playerid,vermelho,"[GANG] Skin entre 0 e 299!");
  879.         dini_IntSet(FormatGang(GangID[playerid]),"Skin2",strval(inputtext));
  880.         for(new all=0;all<MAX_PLAYERS;all++) {
  881.             if(GangID[all]==GangID[playerid]&&GangLevel[all]==2) {
  882.                 SetPlayerSkin(all,strval(inputtext));
  883.             }
  884.         }
  885.     }
  886.     if(dialogid==557&&response) {
  887.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Coloque o ID da Skin!");
  888.         if(strval(inputtext)<0) return SendClientMessage(playerid,vermelho,"[GANG] Skin entre 0 e 299!");
  889.         if(strval(inputtext)>299) return SendClientMessage(playerid,vermelho,"[GANG] Skin entre 0 e 299!");
  890.         dini_IntSet(FormatGang(GangID[playerid]),"Skin3",strval(inputtext));
  891.         for(new all=0;all<MAX_PLAYERS;all++) {
  892.             if(GangID[all]==GangID[playerid]&&GangLevel[all]==3) {
  893.                 SetPlayerSkin(all,strval(inputtext));
  894.             }
  895.         }
  896.     }
  897.     if(dialogid==558&&response) {
  898.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Coloque o ID da Skin!");
  899.         if(strval(inputtext)<0) return SendClientMessage(playerid,vermelho,"[GANG] Skin entre 0 e 299!");
  900.         if(strval(inputtext)>299) return SendClientMessage(playerid,vermelho,"[GANG] Skin entre 0 e 299!");
  901.         dini_IntSet(FormatGang(GangID[playerid]),"Skin4",strval(inputtext));
  902.         for(new all=0;all<MAX_PLAYERS;all++) {
  903.             if(GangID[all]==GangID[playerid]&&GangLevel[all]==4) {
  904.                 SetPlayerSkin(all,strval(inputtext));
  905.             }
  906.         }
  907.     }
  908.     if(dialogid==559&&response) {
  909.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Coloque o ID da Skin!");
  910.         if(strval(inputtext)<0) return SendClientMessage(playerid,vermelho,"[GANG] Skin entre 0 e 299!");
  911.         if(strval(inputtext)>299) return SendClientMessage(playerid,vermelho,"[GANG] Skin entre 0 e 299!");
  912.         dini_IntSet(FormatGang(GangID[playerid]),"Skin5",strval(inputtext));
  913.         for(new all=0;all<MAX_PLAYERS;all++) {
  914.             if(GangID[all]==GangID[playerid]&&GangLevel[all]==5) {
  915.                 SetPlayerSkin(all,strval(inputtext));
  916.             }
  917.         }
  918.     }
  919.     if(dialogid==596&&response) {
  920.         if(listitem==0) {ShowPlayerDialog(playerid,559,DIALOG_STYLE_INPUT,"Gang - Skin - Líder","Coloque o ID da skin dos Líderes:","Mudar","Ok");}
  921.         if(listitem==1) {ShowPlayerDialog(playerid,558,DIALOG_STYLE_INPUT,"Gang - Skin - Sub-Líder","Coloque o ID da skin dos Sub-Líderes:","Mudar","Ok");}
  922.         if(listitem==2) {ShowPlayerDialog(playerid,557,DIALOG_STYLE_INPUT,"Gang - Skin - Comandantes","Coloque o ID da skin dos Comandantes:","Mudar","Ok");}
  923.         if(listitem==3) {ShowPlayerDialog(playerid,556,DIALOG_STYLE_INPUT,"Gang - Skin - Membros","Coloque o ID da skin dos Membros:","Mudar","Ok");}
  924.         if(listitem==4) {ShowPlayerDialog(playerid,555,DIALOG_STYLE_INPUT,"Gang - Skin - Recrutas","Coloque o ID da skin dos Recrutas:","Mudar","Ok");}
  925.     }
  926.     if(dialogid==598&&response) {
  927.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Coloque o ID!");
  928.         else if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid,vermelho,"[GANG] Jogador não conectado!");
  929.         InviteToGang[strval(inputtext)]=GangID[playerid];
  930.         new strmenn[128],nm1[25],nm2[25],strmenn2[128];
  931.         GetPlayerName(playerid,nm1,25);GetPlayerName(strval(inputtext),nm2,25);
  932.         format(strmenn,128,"[GANG] %s (ID:%d) convidou %s (ID:%d) para entrar na gang!",nm1,playerid,nm2,strval(inputtext));
  933.         format(strmenn2,128,"[GANG] %s (ID:%d) convidou você para entrar na gang: %s! ('/gang entrar')",nm1,playerid,dini_Get(FormatGang(GangID[playerid]),"Nome"));
  934.         SendClientMessage(strval(inputtext),laranja,strmenn2);
  935.         for(new playergang=0;playergang<MAX_PLAYERS;playergang++) {
  936.             if(GangID[playergang]==GangID[playerid] || GangID[playerid]==ConvidadoGang[playergang]) {
  937.                 SendClientMessage(playergang,laranja,strmenn);
  938.             }
  939.         }
  940.     }
  941.     if(dialogid==590&&response) {
  942.         if(GangLevel[playerid]<=GangLevel[ScolL[playerid]]) return SendClientMessage(playerid,vermelho,"[GANG] Você não pode mudar o level de alguem com cargo igual ou mais alto!");
  943.         else if(!IsPlayerConnected(ScolL[playerid])) return SendClientMessage(playerid,vermelho,"[GANG] Jogador não conectado!");
  944.         else if((listitem+1)>=GangLevel[playerid]) return SendClientMessage(playerid,vermelho,"[GANG] Você não pode mudar o level de alguem para um cargo igual ou mais alto que o seu!");
  945.         else {
  946.             GangLevel[ScolL[playerid]]=(listitem+1);
  947.             new strmenn[128],nm1[25],nm2[25],finallast[15];
  948.             if((listitem+1)==4) {strcat(finallast,"Sub-Líder");}
  949.             if((listitem+1)==3) {strcat(finallast,"Comandante");}
  950.             if((listitem+1)==2) {strcat(finallast,"Membro");}
  951.             if((listitem+1)==1) {strcat(finallast,"Recruta");}
  952.             GetPlayerName(playerid,nm1,25);GetPlayerName(ScolL[playerid],nm2,25);
  953.             format(strmenn,128,"[GANG] %s (ID:%d) mudou o level de: %s (ID:%d) para %s",nm1,playerid,nm2,ScolL[playerid],finallast);
  954.             for(new playergang=0;playergang<MAX_PLAYERS;playergang++) {
  955.                 if(GangID[playergang]==GangID[playerid] || GangID[playerid]==ConvidadoGang[playergang]) {
  956.                     SendClientMessage(playergang,laranja,strmenn);
  957.                 }
  958.             }
  959.         }
  960.     }
  961.     if(dialogid==591&&response) {
  962.         if(!strlen(inputtext)) return SendClientMessage(playerid,vermelho,"[GANG] Coloque o ID!");
  963.         else if(!IsPlayerConnected(strval(inputtext))) return SendClientMessage(playerid,vermelho,"[GANG] Jogador não conectado!");
  964.         else if(GangID[strval(inputtext)]!=GangID[playerid]) return SendClientMessage(playerid,vermelho,"[GANG] Coloque um jogador que participe de sua gang!");
  965.         else {
  966.             GangLevel[playerid]=4;
  967.             GangLevel[strval(inputtext)]=5;
  968.             new procur[15];
  969.             for(new d=1;d<MAX_GANG_PLAYERS;d++) {
  970.                 format(procur,15,"Membro%d",d);
  971.                 if(!strcmp(dini_Get(FormatGang(GangID[playerid]),procur),PlayerName(strval(inputtext)))) {
  972.                     dini_Set(FormatGang(GangID[playerid]),procur,PlayerName(playerid));
  973.                     new newww[15];format(newww,15,"MembroL%d",d);
  974.                     dini_IntSet(FormatGang(GangID[playerid]),newww,4);
  975.                 }
  976.             }
  977.             dini_Set(FormatGang(GangID[playerid]),"Lider",PlayerName(strval(inputtext)));
  978.             new strmenn[128],nm1[25],nm2[25];
  979.             GetPlayerName(playerid,nm1,25);GetPlayerName(strval(inputtext),nm2,25);
  980.             format(strmenn,128,"[GANG] %s (ID:%d) passou a liderança da gang para: %s (ID:%d)",nm1,playerid,nm2,strval(inputtext));
  981.             for(new playergang=0;playergang<MAX_PLAYERS;playergang++) {
  982.                 if(GangID[playergang]==GangID[playerid] || GangID[playerid]==ConvidadoGang[playergang]) {
  983.                     SendClientMessage(playergang,laranja,strmenn);
  984.                 }
  985.             }
  986.         }
  987.     }
  988.     return 1;
  989. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement