Advertisement
DanGT

[FILTERSCRIPT] Sistema de Enquetes.

Feb 7th, 2013
345
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.56 KB | None | 0 0
  1. // - Topico Original: http://forum.sa-mp.com/showthread.php?p=2371075 - //
  2. // - #@# Creditos #@# - Dan //
  3. // - #@# Agradecimento #@# - [FusioN]JoaoPedro_. - //
  4.  
  5. #include <a_samp>
  6. #include <zcmd>
  7. #include <sscanf>
  8.  
  9. enum E_Info
  10. {
  11.     bool:eCriada,
  12.     eTitulo,
  13.     eSim,
  14.     eNao,
  15.     eVotos
  16. };
  17. new EnqueteInfo[E_Info];
  18.  
  19. new bool:Votou[MAX_PLAYERS];
  20.  
  21. public OnFilterScriptInit() return 1;
  22. public OnFilterScriptExit() return 1;
  23. public OnPlayerConnect(playerid) { Votou[playerid] = false; return 1; }
  24.  
  25. CMD:criar_e(playerid, params[])
  26. {
  27.     if(EnqueteInfo[eCriada] == true) return SendClientMessage(playerid, -1, "ERRO: Já Existe Uma Enquete Aberta no Momento!");
  28.     if(sscanf(params, "s", EnqueteInfo[eTitulo])) return SendClientMessage(playerid, -1, "Uso: /criar_e [Pergunta]");
  29.     {
  30.         new strE[118], NomeE[MAX_PLAYER_NAME];
  31.         GetPlayerName(playerid, NomeE, sizeof(NomeE));
  32.         EnqueteInfo[eCriada] = true;
  33.         EnqueteInfo[eSim] = 0;
  34.         EnqueteInfo[eNao] = 0;
  35.         format(strE, sizeof(strE), "O Administrador %s Criou Uma Enquete Perguntando %s", NomeE, EnqueteInfo[eTitulo]);
  36.         SendClientMessageToAll(-1, strE);
  37.         SendClientMessageToAll(-1, "Vote: /sim_e ou /não_e");
  38.     }
  39.     return true;
  40. }
  41.  
  42. CMD:fechar_e(playerid, params[])
  43. {
  44.     if(EnqueteInfo[eCriada] == false) return SendClientMessage(playerid, -1, "ERRO: Não Existe Uma Enquete Aberta no Momento!");
  45.     {
  46.         new strE[70], strN[80], strQ[65], NomeE[MAX_PLAYER_NAME];
  47.         GetPlayerName(playerid, NomeE, sizeof(NomeE));
  48.         EnqueteInfo[eCriada] = false;
  49.         EnqueteInfo[eVotos] = EnqueteInfo[eSim] + EnqueteInfo[eNao];
  50.         format(strE, sizeof(strE), "O Administrador %s, Acaba de Fechar Uma Enquete.", NomeE);
  51.         SendClientMessageToAll(-1, strE);
  52.         format(strN, sizeof(strN), "O Titulo da Enquete era: %s", EnqueteInfo[eTitulo]);
  53.         SendClientMessageToAll(-1, strN);
  54.         format(strQ, sizeof(strQ), "Votação: Sim [%d], Não [%d], Quantidade Total de Votos [%d]", EnqueteInfo[eSim], EnqueteInfo[eNao], EnqueteInfo[eVotos]);
  55.         for(new E = 0; E < MAX_PLAYERS; E++)
  56.         {
  57.             Votou[E] = false;
  58.             break;
  59.         }
  60.     }
  61.     return true;
  62. }
  63.  
  64. CMD:sim_e(playerid)
  65. {
  66.     if(Votou[playerid] == true) return SendClientMessage(playerid, -1, "ERRO: Você ja votou!");
  67.     {
  68.         EnqueteInfo[eSim] += 1;
  69.         Votou[playerid] = true;
  70.         SendClientMessage(playerid, -1, "Voto Computado Com Sucesso");
  71.     }
  72.     return true;
  73. }
  74.  
  75. CMD:nao_e(playerid)
  76. {
  77.     if(Votou[playerid] == true) return SendClientMessage(playerid, -1, "ERRO: Você ja votou!");
  78.     {
  79.         EnqueteInfo[eNao] += 1;
  80.         Votou[playerid] = true;
  81.         SendClientMessage(playerid, -1, "Voto Computado Com Sucesso");
  82.     }
  83.     return true;
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement