Advertisement
Guest User

Sistema de Bingo

a guest
Oct 19th, 2011
414
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 18.25 KB | None | 0 0
  1. #include <a_samp>
  2.  
  3. #define MAX_FS_PLAYERS 50
  4.  
  5. //-- TextDraws
  6. new Text:TextDrawTodos[5],
  7.     Text:TextDrawPlayer[MAX_FS_PLAYERS][12];
  8.  
  9. //-- Sistema
  10. forward SortearNumero();
  11. forward EsconderNumero();
  12.  
  13. new bool:BingoAberto,
  14.     bool:PartidaIniciada,
  15.     bool:NumeroSorteado[100],
  16.     NumerosSorteados,
  17.     NumeroDeParticipantes,
  18.     TimerSortearNumero,
  19.     DinheiroBingo;
  20.  
  21. //-- Jogador
  22. new bool:Participando[MAX_FS_PLAYERS],
  23.     bool:NumeroMarcadoJogador[MAX_FS_PLAYERS][12],
  24.     NumeroJogador[MAX_FS_PLAYERS][12];
  25.  
  26.  
  27. public OnFilterScriptInit()
  28. {
  29.     TextDrawTodos[0] = TextDrawCreate(677.000000, -13.000000, "Fundo Preto");
  30.     TextDrawBackgroundColor(TextDrawTodos[0], 255);
  31.     TextDrawFont(TextDrawTodos[0], 1);
  32.     TextDrawLetterSize(TextDrawTodos[0], 1.799999, 27.000000);
  33.     TextDrawColor(TextDrawTodos[0], -1);
  34.     TextDrawSetOutline(TextDrawTodos[0], 0);
  35.     TextDrawSetProportional(TextDrawTodos[0], 1);
  36.     TextDrawSetShadow(TextDrawTodos[0], 1);
  37.     TextDrawUseBox(TextDrawTodos[0], 1);
  38.     TextDrawBoxColor(TextDrawTodos[0], 255);
  39.     TextDrawTextSize(TextDrawTodos[0], -5.000000, 0.000000);
  40.  
  41.     TextDrawTodos[1] = TextDrawCreate(206.000000, 16.000000, "l l l l");
  42.     TextDrawBackgroundColor(TextDrawTodos[1], 255);
  43.     TextDrawFont(TextDrawTodos[1], 1);
  44.     TextDrawLetterSize(TextDrawTodos[1], 2.499999, 49.000000);
  45.     TextDrawColor(TextDrawTodos[1], -1);
  46.     TextDrawSetOutline(TextDrawTodos[1], 0);
  47.     TextDrawSetProportional(TextDrawTodos[1], 1);
  48.     TextDrawSetShadow(TextDrawTodos[1], 1);
  49.  
  50.     TextDrawTodos[2] = TextDrawCreate(177.000000, 84.000000, "-~n~-~n~-~n~-~n~-");
  51.     TextDrawBackgroundColor(TextDrawTodos[2], 0);
  52.     TextDrawFont(TextDrawTodos[2], 0);
  53.     TextDrawLetterSize(TextDrawTodos[2], 21.490049, 7.400000);
  54.     TextDrawColor(TextDrawTodos[2], -1);
  55.     TextDrawSetOutline(TextDrawTodos[2], 0);
  56.     TextDrawSetProportional(TextDrawTodos[2], 1);
  57.     TextDrawSetShadow(TextDrawTodos[2], 1);
  58.    
  59.     TextDrawTodos[3] = TextDrawCreate(339.000000, 58.000000, "[    ]");
  60.     TextDrawBackgroundColor(TextDrawTodos[3], 255);
  61.     TextDrawFont(TextDrawTodos[3], 1);
  62.     TextDrawLetterSize(TextDrawTodos[3], 0.600000, 6.000000);
  63.     TextDrawColor(TextDrawTodos[3], -1);
  64.     TextDrawSetOutline(TextDrawTodos[3], 0);
  65.     TextDrawSetProportional(TextDrawTodos[3], 1);
  66.     TextDrawSetShadow(TextDrawTodos[3], 1);
  67.    
  68.     TextDrawTodos[4] = TextDrawCreate(354.000000, 77.000000, "~y~??");
  69.     TextDrawBackgroundColor(TextDrawTodos[4], 255);
  70.     TextDrawFont(TextDrawTodos[4], 3);
  71.     TextDrawLetterSize(TextDrawTodos[4], 0.699999, 3.000000);
  72.     TextDrawColor(TextDrawTodos[4], -1);
  73.     TextDrawSetOutline(TextDrawTodos[4], 0);
  74.     TextDrawSetProportional(TextDrawTodos[4], 1);
  75.     TextDrawSetShadow(TextDrawTodos[4], 1);
  76.     return 1;
  77. }
  78.  
  79. stock IniciarBingo(playerid)
  80. {
  81.     TextDrawPlayer[playerid][0] = TextDrawCreate(233.000000, 140.000000, "~g~??");
  82.     TextDrawBackgroundColor(TextDrawPlayer[playerid][0], 255);
  83.     TextDrawFont(TextDrawPlayer[playerid][0], 3);
  84.     TextDrawLetterSize(TextDrawPlayer[playerid][0], 0.699999, 3.000000);
  85.     TextDrawColor(TextDrawPlayer[playerid][0], -1);
  86.     TextDrawSetOutline(TextDrawPlayer[playerid][0], 0);
  87.     TextDrawSetProportional(TextDrawPlayer[playerid][0], 1);
  88.     TextDrawSetShadow(TextDrawPlayer[playerid][0], 1);
  89.  
  90.     TextDrawPlayer[playerid][1] = TextDrawCreate(293.000000, 140.000000, "~g~??");
  91.     TextDrawBackgroundColor(TextDrawPlayer[playerid][1], 255);
  92.     TextDrawFont(TextDrawPlayer[playerid][1], 3);
  93.     TextDrawLetterSize(TextDrawPlayer[playerid][1], 0.699999, 3.000000);
  94.     TextDrawColor(TextDrawPlayer[playerid][1], -1);
  95.     TextDrawSetOutline(TextDrawPlayer[playerid][1], 0);
  96.     TextDrawSetProportional(TextDrawPlayer[playerid][1], 1);
  97.     TextDrawSetShadow(TextDrawPlayer[playerid][1], 1);
  98.  
  99.     TextDrawPlayer[playerid][2] = TextDrawCreate(354.000000, 140.000000, "~g~??");
  100.     TextDrawBackgroundColor(TextDrawPlayer[playerid][2], 255);
  101.     TextDrawFont(TextDrawPlayer[playerid][2], 3);
  102.     TextDrawLetterSize(TextDrawPlayer[playerid][2], 0.699999, 3.000000);
  103.     TextDrawColor(TextDrawPlayer[playerid][2], -1);
  104.     TextDrawSetOutline(TextDrawPlayer[playerid][2], 0);
  105.     TextDrawSetProportional(TextDrawPlayer[playerid][2], 1);
  106.     TextDrawSetShadow(TextDrawPlayer[playerid][2], 1);
  107.  
  108.     TextDrawPlayer[playerid][3] = TextDrawCreate(233.000000, 207.000000, "~g~??");
  109.     TextDrawBackgroundColor(TextDrawPlayer[playerid][3], 255);
  110.     TextDrawFont(TextDrawPlayer[playerid][3], 3);
  111.     TextDrawLetterSize(TextDrawPlayer[playerid][3], 0.699999, 3.000000);
  112.     TextDrawColor(TextDrawPlayer[playerid][3], -1);
  113.     TextDrawSetOutline(TextDrawPlayer[playerid][3], 0);
  114.     TextDrawSetProportional(TextDrawPlayer[playerid][3], 1);
  115.     TextDrawSetShadow(TextDrawPlayer[playerid][3], 1);
  116.  
  117.     TextDrawPlayer[playerid][4] = TextDrawCreate(293.000000, 207.000000, "~g~??");
  118.     TextDrawBackgroundColor(TextDrawPlayer[playerid][4], 255);
  119.     TextDrawFont(TextDrawPlayer[playerid][4], 3);
  120.     TextDrawLetterSize(TextDrawPlayer[playerid][4], 0.699999, 3.000000);
  121.     TextDrawColor(TextDrawPlayer[playerid][4], -1);
  122.     TextDrawSetOutline(TextDrawPlayer[playerid][4], 0);
  123.     TextDrawSetProportional(TextDrawPlayer[playerid][4], 1);
  124.     TextDrawSetShadow(TextDrawPlayer[playerid][4], 1);
  125.  
  126.     TextDrawPlayer[playerid][5] = TextDrawCreate(354.000000, 207.000000, "~g~??");
  127.     TextDrawBackgroundColor(TextDrawPlayer[playerid][5], 255);
  128.     TextDrawFont(TextDrawPlayer[playerid][5], 3);
  129.     TextDrawLetterSize(TextDrawPlayer[playerid][5], 0.699999, 3.000000);
  130.     TextDrawColor(TextDrawPlayer[playerid][5], -1);
  131.     TextDrawSetOutline(TextDrawPlayer[playerid][5], 0);
  132.     TextDrawSetProportional(TextDrawPlayer[playerid][5], 1);
  133.     TextDrawSetShadow(TextDrawPlayer[playerid][5], 1);
  134.  
  135.     TextDrawPlayer[playerid][6] = TextDrawCreate(233.000000, 272.000000, "~g~??");
  136.     TextDrawBackgroundColor(TextDrawPlayer[playerid][6], 255);
  137.     TextDrawFont(TextDrawPlayer[playerid][6], 3);
  138.     TextDrawLetterSize(TextDrawPlayer[playerid][6], 0.699999, 3.000000);
  139.     TextDrawColor(TextDrawPlayer[playerid][6], -1);
  140.     TextDrawSetOutline(TextDrawPlayer[playerid][6], 0);
  141.     TextDrawSetProportional(TextDrawPlayer[playerid][6], 1);
  142.     TextDrawSetShadow(TextDrawPlayer[playerid][6], 1);
  143.  
  144.     TextDrawPlayer[playerid][7] = TextDrawCreate(293.000000, 272.000000, "~g~??");
  145.     TextDrawBackgroundColor(TextDrawPlayer[playerid][7], 255);
  146.     TextDrawFont(TextDrawPlayer[playerid][7], 3);
  147.     TextDrawLetterSize(TextDrawPlayer[playerid][7], 0.699999, 3.000000);
  148.     TextDrawColor(TextDrawPlayer[playerid][7], -1);
  149.     TextDrawSetOutline(TextDrawPlayer[playerid][7], 0);
  150.     TextDrawSetProportional(TextDrawPlayer[playerid][7], 1);
  151.     TextDrawSetShadow(TextDrawPlayer[playerid][7], 1);
  152.  
  153.     TextDrawPlayer[playerid][8] = TextDrawCreate(354.000000, 272.000000, "~g~??");
  154.     TextDrawBackgroundColor(TextDrawPlayer[playerid][8], 255);
  155.     TextDrawFont(TextDrawPlayer[playerid][8], 3);
  156.     TextDrawLetterSize(TextDrawPlayer[playerid][8], 0.699999, 3.000000);
  157.     TextDrawColor(TextDrawPlayer[playerid][8], -1);
  158.     TextDrawSetOutline(TextDrawPlayer[playerid][8], 0);
  159.     TextDrawSetProportional(TextDrawPlayer[playerid][8], 1);
  160.     TextDrawSetShadow(TextDrawPlayer[playerid][8], 1);
  161.  
  162.     TextDrawPlayer[playerid][9] = TextDrawCreate(233.000000, 340.000000, "~g~??");
  163.     TextDrawBackgroundColor(TextDrawPlayer[playerid][9], 255);
  164.     TextDrawFont(TextDrawPlayer[playerid][9], 3);
  165.     TextDrawLetterSize(TextDrawPlayer[playerid][9], 0.699999, 3.000000);
  166.     TextDrawColor(TextDrawPlayer[playerid][9], -1);
  167.     TextDrawSetOutline(TextDrawPlayer[playerid][9], 0);
  168.     TextDrawSetProportional(TextDrawPlayer[playerid][9], 1);
  169.     TextDrawSetShadow(TextDrawPlayer[playerid][9], 1);
  170.  
  171.     TextDrawPlayer[playerid][10] = TextDrawCreate(293.000000, 340.000000, "~g~??");
  172.     TextDrawBackgroundColor(TextDrawPlayer[playerid][10], 255);
  173.     TextDrawFont(TextDrawPlayer[playerid][10], 3);
  174.     TextDrawLetterSize(TextDrawPlayer[playerid][10], 0.699999, 3.000000);
  175.     TextDrawColor(TextDrawPlayer[playerid][10], -1);
  176.     TextDrawSetOutline(TextDrawPlayer[playerid][10], 0);
  177.     TextDrawSetProportional(TextDrawPlayer[playerid][10], 1);
  178.     TextDrawSetShadow(TextDrawPlayer[playerid][10], 1);
  179.  
  180.     TextDrawPlayer[playerid][11] = TextDrawCreate(354.000000, 340.000000, "~g~??");
  181.     TextDrawBackgroundColor(TextDrawPlayer[playerid][11], 255);
  182.     TextDrawFont(TextDrawPlayer[playerid][11], 3);
  183.     TextDrawLetterSize(TextDrawPlayer[playerid][11], 0.699999, 3.000000);
  184.     TextDrawColor(TextDrawPlayer[playerid][11], -1);
  185.     TextDrawSetOutline(TextDrawPlayer[playerid][11], 0);
  186.     TextDrawSetProportional(TextDrawPlayer[playerid][11], 1);
  187.     TextDrawSetShadow(TextDrawPlayer[playerid][11], 1);
  188.    
  189.     for(new i = 0; i < 12; i++)
  190.     {
  191.         if(i < 5) TextDrawShowForPlayer(playerid, TextDrawTodos[i]);
  192.         TextDrawShowForPlayer(playerid, TextDrawPlayer[playerid][i]);
  193.     }
  194.    
  195.     Participando[playerid] = true;
  196.  
  197.     for(new Numero = 0; Numero < 12; Numero++) NumeroJogador[playerid][Numero] = random(99) + 1;
  198.     for(new Check = 0, Numero = 0; Numero != 12; Check++)
  199.     {
  200.         //printf("DEBUG: Check = %d Numero = %d", Check, Numero);
  201.         ChecarNovamente:
  202.         if(Check != Numero)
  203.         {
  204.             if(NumeroJogador[playerid][Check] == NumeroJogador[playerid][Numero])
  205.             {
  206.                 NumeroJogador[playerid][Check] = random(99) + 1;
  207.                 Check = 0;
  208.                 Numero = 0;
  209.                 goto ChecarNovamente;
  210.             }
  211.         }
  212.         if(Check == 11)
  213.         {
  214.             Check = -1;
  215.             Numero ++;
  216.         }
  217.     }
  218.    
  219.     new string[32];
  220.     for(new TextDraw = 0; TextDraw < 12; TextDraw++)
  221.     {
  222.         format(string, sizeof(string), "~g~%02d", NumeroJogador[playerid][TextDraw]);
  223.         TextDrawSetString(TextDrawPlayer[playerid][TextDraw], string);
  224.     }
  225.    
  226.     SendClientMessage(playerid, 0xFFFF00AA, "---------------------------------------------------------------------------------------------------------------");
  227.     SendClientMessage(playerid, 0x009900AA, "[Bingo] {FF0000}Aparecerá{FFFFFF} Um Número a Cada {FFFF00}8{FFFFFF} Segundos e {FF0000}Sumirá{FFFFFF} Apos {FFFF00}3{FFFFFF} Segundos.");
  228.     SendClientMessage(playerid, 0x009900AA, "[Bingo]{FFFFFF} Este Número é o Sorteado. Você deve usar o Comando {FF0000}/Marcar{FFFFFF} para Marcar em sua Tabela.");
  229.     SendClientMessage(playerid, 0x009900AA, "[Bingo]{FFFFFF} Se Você completar a Tabela, Fale {FF0000}EXATAMENTE{FFFFFF} {0066FF}''Bingo''{FFFFFF}. Caso Contrario, não será registrado.");
  230.     SendClientMessage(playerid, 0x009900AA, "[Bingo]{FFFFFF} A Partida comecará em {FF0000}Poucos{FFFFFF} Segundos.");
  231.     return 1;
  232. }
  233.  
  234. stock FinalizarBingo(playerid)
  235. {
  236.     for(new i = 0; i < 12; i++)
  237.     {
  238.         if(i < 5) TextDrawHideForPlayer(playerid, TextDrawTodos[i]);
  239.         TextDrawShowForPlayer(playerid, TextDrawPlayer[playerid][i]);
  240.         TextDrawDestroy(TextDrawPlayer[playerid][i]);
  241.     }
  242.    
  243.     Participando[playerid] = false;
  244.     return 1;
  245. }
  246.  
  247. stock SendBingoMessage(color, const message[])
  248. {
  249.     for(new playerid = 0; playerid < MAX_FS_PLAYERS; playerid++)
  250.     {
  251.         if(IsPlayerConnected(playerid) && Participando[playerid])
  252.         {
  253.             SendClientMessage(playerid, color, message);
  254.         }
  255.     }
  256.     return;
  257. }
  258.  
  259. //------------------------------------------------------------------------------
  260.  
  261. public SortearNumero()
  262. {
  263.     if(!PartidaIniciada)
  264.     {
  265.         if(NumeroDeParticipantes == 0)
  266.         {
  267.             BingoAberto = false;
  268.  
  269.             SendClientMessageToAll(0x009900AA, "[Bingo]{FFFFFF} O Bingo {FF0000}Foi Cancelado{FFFFFF}. {0066FF}Motivo: Não Há Jogadores.");
  270.             return 1;
  271.         }
  272.         else if(NumeroDeParticipantes == 1)
  273.         {
  274.             BingoAberto = false;
  275.  
  276.             SendClientMessageToAll(0x009900AA, "[Bingo]{FFFFFF} O Bingo {FF0000}Foi Cancelado{FFFFFF}. {0066FF}Motivo: Não Há Jogadores Suficientes.");
  277.  
  278.             for(new playerid = 0; playerid < MAX_FS_PLAYERS; playerid++)
  279.             {
  280.                 if(IsPlayerConnected(playerid) && Participando[playerid])
  281.                 {
  282.                     FinalizarBingo(playerid);
  283.                 }
  284.             }
  285.             return 1;
  286.         }
  287.        
  288.         PartidaIniciada = true;
  289.        
  290.         SendClientMessageToAll(0x009900AA, "[Bingo]{FFFFFF} O Bingo {FFFF00}Começou{FFFFFF}.");
  291.        
  292.         TimerSortearNumero = SetTimer("SortearNumero", (8*1000), true);
  293.     }
  294.     else if(NumerosSorteados == 100)
  295.     {
  296.         BingoAberto = false;
  297.         PartidaIniciada = false;
  298.        
  299.         SendClientMessageToAll(0x009900AA, "[Bingo]{FFFFFF} O Bingo {FFFF00}Terminou{FFFFFF}. {FF0000}Não houve Ganhadores{FFFFFF}.");
  300.        
  301.         KillTimer(TimerSortearNumero);
  302.        
  303.         for(new playerid = 0; playerid < MAX_FS_PLAYERS; playerid++)
  304.         {
  305.             if(IsPlayerConnected(playerid) && Participando[playerid])
  306.             {
  307.                 FinalizarBingo(playerid);
  308.             }
  309.         }
  310.         return 1;
  311.     }
  312.    
  313.     new Numero;
  314.     SortearNovamente:
  315.     Numero = random(99) + 1;
  316.     if(NumeroSorteado[Numero]) goto SortearNovamente;
  317.  
  318.     NumeroSorteado[Numero] = true;
  319.     NumerosSorteados ++;
  320.    
  321.     new string[32];
  322.     format(string, sizeof(string), "~y~%02d", Numero);
  323.     TextDrawSetString(TextDrawTodos[4], string);
  324.    
  325.     SetTimer("EsconderNumero", (3*1000), false);
  326.     return 1;
  327. }
  328.  
  329. public EsconderNumero()
  330. {
  331.     TextDrawSetString(TextDrawTodos[4], "~y~??");
  332.     return 1;
  333. }
  334.  
  335. //------------------------------------------------------------------------------
  336.  
  337. public OnPlayerCommandText(playerid, cmdtext[])
  338. {
  339.     new cmd[128], idx;
  340.     cmd = strtok(cmdtext, idx);
  341.     if(!strcmp("/abrirbingo", cmd, true))
  342.     {
  343.         if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0x999999AA, "ERRO: Somente um Admin pode abrir o Bingo.");
  344.         if(BingoAberto) return SendClientMessage(playerid, 0x999999AA, "ERRO: O Bingo já esta Aberto / Já foi Iniciado.");
  345.        
  346.         new tmp[128];
  347.         tmp = strtok(cmdtext, idx);
  348.         if(!strlen(tmp)) return SendClientMessage(playerid, 0x999999AA, "Use: /AbrirBingo [DinheiroAGanhar]");
  349.         DinheiroBingo = strval(tmp);
  350.        
  351.         BingoAberto = true;
  352.         PartidaIniciada = false;
  353.         SendClientMessageToAll(0x009900AA, "[Bingo]{FFFFFF} Bingo {FFFF00}Aberto{FFFFFF}! Use {FF0000}/EntrarBingo{FFFFFF}. Seja Rápido, ele Fechara em 30 Segundos!");
  354.        
  355.         for(new i = 0; i < 100; i++) NumeroSorteado[i] = false;
  356.         NumerosSorteados = 0;
  357.         NumeroDeParticipantes = 1;
  358.        
  359.         TimerSortearNumero = SetTimer("SortearNumero", (30*1000), false);
  360.        
  361.         IniciarBingo(playerid);
  362.         return 1;
  363.     }
  364.     if(!strcmp("/entrarbingo", cmdtext, true))
  365.     {
  366.         if(!BingoAberto) return SendClientMessage(playerid, 0x999999AA, "ERRO: O Bingo não esta Aberto.");
  367.         if(PartidaIniciada) return SendClientMessage(playerid, 0x999999AA, "ERRO: A Partida já Começou.");
  368.         if(Participando[playerid]) return SendClientMessage(playerid, 0x999999AA, "ERRO: Você já esta Participando do Bingo.");
  369.        
  370.         new pName[MAX_PLAYER_NAME],
  371.             string[128];
  372.         GetPlayerName(playerid, pName, sizeof(pName));
  373.         format(string, sizeof(string), "[Bingo]{FFFFFF} %s {FFFF00}Entrou{FFFFFF} no Jogo.", pName);
  374.         SendBingoMessage(0x009900AA, string);
  375.  
  376.         IniciarBingo(playerid);
  377.         NumeroDeParticipantes ++;
  378.        
  379.         return 1;
  380.     }
  381.     else if(!strcmp("/desistir", cmdtext, true))
  382.     {
  383.         if(!Participando[playerid]) return SendClientMessage(playerid, 0x999999AA, "ERRO: Você não esta Participando do Bingo.");
  384.        
  385.         FinalizarBingo(playerid);
  386.  
  387.         new pName[MAX_PLAYER_NAME],
  388.             string[128];
  389.         GetPlayerName(playerid, pName, sizeof(pName));
  390.         format(string, sizeof(string), "[Bingo]{FFFFFF} %s {FF0000}Desistiu{FFFFFF} do Jogo.", pName);
  391.         SendBingoMessage(0x009900AA, string);
  392.  
  393.         NumeroDeParticipantes --;
  394.         return 1;
  395.     }
  396.     else if(!strcmp("/marcar", cmd, true))
  397.     {
  398.         if(!Participando[playerid]) return SendClientMessage(playerid, 0x999999AA, "ERRO: Você não esta Participando do Bingo.");
  399.         if(!PartidaIniciada) return SendClientMessage(playerid, 0x999999AA, "ERRO: A Partida ainda Não Começou.");
  400.        
  401.         new tmp[128];
  402.         tmp = strtok(cmdtext, idx);
  403.        
  404.         if(!strval(tmp) || strval(tmp) < 1 || strval(tmp) > 100) return SendClientMessage(playerid, 0x999999AA, "Use: /Marcar [Número]");
  405.         new Numero = strval(tmp);
  406.        
  407.         for(new Checar = 0; Checar < 12; Checar++)
  408.         {
  409.             if(NumeroJogador[playerid][Checar] == Numero)
  410.             {
  411.                 new string[32];
  412.                 if(!NumeroMarcadoJogador[playerid][Checar])
  413.                 {
  414.                     format(string, sizeof(string), "~r~%02d", NumeroJogador[playerid][Checar]);
  415.                     NumeroMarcadoJogador[playerid][Checar] = true;
  416.                 }
  417.                 else
  418.                 {
  419.                     format(string, sizeof(string), "~g~%02d", NumeroJogador[playerid][Checar]);
  420.                     NumeroMarcadoJogador[playerid][Checar] = false;
  421.                 }
  422.                 TextDrawSetString(TextDrawPlayer[playerid][Checar], string);
  423.                 return 1;
  424.             }
  425.         }
  426.        
  427.         SendClientMessage(playerid, 0x999999AA, "ERRO: Você não tem este Numero.");
  428.         return 1;
  429.     }
  430. /*  else if(!strcmp("/TesteBingo", cmdtext, true)) //Teste de Bingar
  431.     {
  432.         for(new i = 0; i < 12; i++)
  433.         {
  434.             if(!NumeroSorteado[NumeroJogador[playerid][i]])
  435.             {
  436.                 NumeroSorteado[NumeroJogador[playerid][i]] = true;
  437.                 NumerosSorteados ++;
  438.             }
  439.         }
  440.         SendClientMessage(playerid, 0xFFFF00AA, "Você já pode Bingar.");
  441.         return 1;
  442.     }*/
  443.     return 0;
  444. }
  445.  
  446. public OnPlayerText(playerid, text[])
  447. {
  448.     if(!strcmp("Bingo", text, true) && Participando[playerid])
  449.     {
  450.         for(new i = 0; i < 12; i++)
  451.         {
  452.             if(!NumeroSorteado[NumeroJogador[playerid][i]])
  453.             {
  454.                 SendClientMessage(playerid, 0x009900AA, "[Bingo]{FFFFFF} Você {FF0000}não{FFFFFF} Bingou!");
  455.                 return 0;
  456.             }
  457.         }
  458.        
  459.         new string[128],
  460.             pName[MAX_PLAYER_NAME];
  461.         GetPlayerName(playerid, pName, sizeof(pName));
  462.         GivePlayerMoney(playerid, DinheiroBingo);
  463.         format(string, sizeof(string), "[Bingo]{FFFFFF} %s {FFFF00}Bingou{FFFFFF} e Ganhou {009900}R$%d,00{FFFFFF}!", pName, DinheiroBingo);
  464.         SendClientMessageToAll(0x009900AA, string);
  465.        
  466.         for(new i = 0; i < MAX_FS_PLAYERS; i++)
  467.         {
  468.             if(IsPlayerConnected(i) && Participando[i])
  469.             {
  470.                 FinalizarBingo(i);
  471.             }
  472.         }
  473.  
  474.         BingoAberto = false;
  475.         PartidaIniciada = false;
  476.        
  477.         KillTimer(TimerSortearNumero);
  478.         return 0;
  479.     }
  480.     if(Participando[playerid])
  481.     {
  482.         SendClientMessage(playerid, 0x009900AA, "[Bingo]{FFFFFF} Durante o Bingo, o {FFFF00}Chat{FFFFFF} é {FF0000}Desativado{FFFFFF}.");
  483.         return 0;
  484.     }
  485.     return 1;
  486. }
  487.  
  488. //------------------------------------------------------------------------------
  489.  
  490. stock strtok(const string[], &index)
  491. {
  492.     new length = strlen(string);
  493.     while ((index < length) && (string[index] <= ' '))
  494.     {
  495.         index++;
  496.     }
  497.  
  498.     new offset = index;
  499.     new result[20];
  500.     while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  501.     {
  502.         result[index - offset] = string[index];
  503.         index++;
  504.     }
  505.     result[index - offset] = EOS;
  506.     return result;
  507. }
  508.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement