Advertisement
HoodScript

LOGIN/REGISTRO & SISTEMA ADMIN E BAN

Mar 28th, 2017
2,258
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 61.35 KB | None | 0 0
  1. /*
  2.  
  3. OBS: ESTE SCRIPT DE LOGIN E REGISTRO FOI DESENVOLVIDO TOTALMENTE POR HOOD. (HOODSCRIPT NO FORUM)
  4.  
  5.                         http://forum.sa-mp.com/member.php?u=290303
  6.  
  7. *CRIE UMA PASTA CHAMADA " HSCRIPT " DENTRO DA SCRIPTFILES E DENTRO DESTA PASTA CRIAR OUTRA CHAMADA DE " USUARIOS " E " BANIDOS "
  8.  
  9. *VOCÊ IRÁ PRECISAR DA INCLUDE " DOF2 ", " ZCMD ", " SSCANF2 ", " A_SAMP " CASO NÃO TENHA EM SEU PAWNO BAIXE-A!
  10. *PROIBIDA A VENDA PARCIAL DESTE SCRIPT;
  11.  
  12. *CASO ENCONTRE BUGS/PROBLEMAS AVISE NO POST FEITO NO FORUM DO SA-MP..
  13.  
  14. ==============================================================================================
  15.                            COMANDOS DOS STAFFS E MEMBROS
  16. ==============================================================================================
  17.                                       STAFFS
  18. ==============================================================================================
  19.  
  20. + /LRCON  - CONECTA O JOGADOR NA RCON DO SERVIDOR
  21. + /ADM [DAR/TIRAR/LEVEL] - FUNÇÃO DE DAR/TIRAR/ALTERAR LEVEL STAFF DO JOGADOR (APENAS RCON)
  22.  
  23. + /KICKAR [JOGADOR] - KICKAR UM JOGADOR
  24.  
  25. + /BANIR [JOGADOR] - BANIR UM JOGADOR
  26. + /DESBANIR [JOGADOR] - DESBANIR UM JOGADOR
  27.  
  28. + /MUTAR [JOGADOR] - CALAR O JOGADOR
  29. + /DESMUTAR [JOGADOR] - DESCALAR UM JOGADOR
  30.  
  31. + /CS [MENSAGEM] - CHAT STAFF
  32. + /AN [MENSAGEM] - MENSAGEM NA TELA
  33.  
  34. + /IR [JOGADOR] - IR NA POSIÇÃO DE UM JOGADOR
  35. + /TRAZER [JOGADOR] - TRAZER UM JOGADOR ATÉ SUA POSIÇÃO
  36.  
  37. + /SKIN [JOGADOR] [SKIN] - ALTERAR A SKIN DE UM JOGADOR
  38. + /DARDINHEIRO [JOGADOR] [QUANTIDADE] - DAR DINHEIRO PARA UM JOGADOR
  39. + /RESETARDINHEIRO [JOGADOR] - RESETA O DINHEIRO DE UM JOGADOR
  40. + /DARSCORE [JOGADOR] [QUANTIDADE] - DAR SCORE (LEVEL) PARA UM JOGADOR
  41. + /RESETARSCORE [JOGADOR] - RESETA O SCORE DE UM JOGADOR
  42.  
  43. + /TRABALHAR - FICAR NA ATIVA COMO STAFF
  44. + /JOGAR - APENAS FICAR COMO JOGADOR
  45.  
  46. ==============================================================================================
  47.                                         MEMBROS
  48. ==============================================================================================
  49.  
  50. + /MUDAREMAIL - ALTERAR O E-MAIL DA CONTA
  51. + /MUDARSENHA - ALTERAR A SENHA DA CONTA
  52. //================================================
  53.  
  54. */
  55.  
  56. #include <a_samp>
  57. #include <DOF2>
  58. #include <zcmd>
  59. #include <sscanf2>
  60.  
  61. #define Loop(%0,%1) for(new %0 = 0; %0 < %1; %0++)
  62.  
  63. //CONFIGURAÇÕES
  64. #define DINHEIRO_INICIAL 50000//ALTERE PARA UMA QUANTIDADE DE DINHEIRO QUE O JOGADOR IRÁ COMEÇAR
  65. #define SCORE_INICIAL      100//ALTERE PARA UM SCORE(LEVEL) QUE O JOGADOR IRÁ COMEÇAR
  66.  
  67. #define SKIN_MASCULINA     250//ALTERE PARA UMA SKIN DE HOMEM DESEJADA
  68. #define SKIN_FEMININA       56//ALTERE PARA UMA SKIN DE MULHER DESEJADA
  69.  
  70. #define P_RCON "Hood"//ALTERE PARA QUEM PODERÁ UTILIZAR A RCON  (/LRCON)
  71. //============================
  72.  
  73. //CORES
  74. #define C_Amarelo  0xFFF000AA
  75. #define C_Branco   0xFFFFFFAA
  76. #define C_Vermelho 0xFF0000AA
  77. #define C_Verde    0x00FF00AA
  78. //============================
  79.  
  80. #define A_USUARIOS "HSCRIPT/USUARIOS/%s.ini"
  81. #define A_BANIDOS "HSCRIPT/BANIDOS/%s.ini"
  82.  
  83. enum pinfo
  84. {
  85.     bool:Logado,
  86.  
  87.     Email[128],
  88.     Senha[128],
  89.  
  90.     bool:CEmail,//ISTO SERVE PARA VERIFICAR SE O E-MAIL FOI DIGITADO
  91.     bool:CSenha,//ISTO SERVE PARA VERIFICAR SE A SENHA FOI DIGITADA
  92.  
  93.     Genero,
  94.  
  95.     Skin,
  96.     Dinheiro,
  97.     Score,
  98.    
  99.     bool:Mutado,
  100.    
  101.     Staff,
  102.     bool:Trabalhando,//ISTO SERVE PARA VERIFICAR SE A PESSOA ESTÁ JOGANDO OU TRABALHANDO
  103.     bool:Rcon,//ISTO SERVE PARA VERIFICAR SE A PESSOA ESTÁ COM RCON
  104.  
  105.     PlayerText:HScript[17]
  106. };
  107.  
  108. new Jogador[MAX_PLAYERS][pinfo];
  109.  
  110. main()
  111. {
  112.     print("HSCRIPT DESENVOLVIDO POR HOOD (HOODSCRIPT), NAO REMOVA OS CREDITOS!");
  113. }
  114.  
  115. public OnGameModeInit()
  116. {
  117.     ShowPlayerMarkers(0);
  118.     ShowNameTags(1);
  119.     EnableStuntBonusForAll(0);
  120.     DisableInteriorEnterExits();
  121.     return 1;
  122. }
  123.  
  124. public OnGameModeExit()
  125. {
  126.     DOF2_Exit();
  127.     return 1;
  128. }
  129.  
  130. public OnPlayerConnect(playerid)
  131. {
  132.  
  133.     HBanExist(playerid);
  134.    
  135.     new arq[128];
  136.     CriarTexts(playerid);
  137.     Jogador[playerid][Logado] = false;
  138.  
  139.     SelectTextDraw(playerid, C_Amarelo);
  140.  
  141.     Jogador[playerid][HScript][16] = CreatePlayerTextDraw(playerid, 152.720764, 157.429977, "New Textdraw");
  142.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][16], 0.449999, 1.600000);
  143.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][16], 101.599945, 203.690704);
  144.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][16], 1);
  145.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][16], -1);
  146.     PlayerTextDrawUseBox(playerid, Jogador[playerid][HScript][16], true);
  147.     PlayerTextDrawBoxColor(playerid, Jogador[playerid][HScript][16], 0);
  148.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][16], 0);
  149.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][16], 1);
  150.     PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][16], 51);
  151.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][16], 5);
  152.     PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][16], 1);
  153.     PlayerTextDrawSetPreviewRot(playerid, Jogador[playerid][HScript][16], 0.000000, 0.000000, 0.000000, 1.000000);
  154.  
  155.     format(arq, sizeof(arq), A_USUARIOS, Nome(playerid));
  156.     if(DOF2_FileExists(arq))
  157.     {
  158.         format(Jogador[playerid][Senha], 128, "%s", DOF2_GetString(arq, "Senha")); //ISTO SETA A SENHA DA CONTA NA VARIAVEL
  159.         PlayerTextDrawSetPreviewModel(playerid, Jogador[playerid][HScript][16], DOF2_GetInt(arq, "Skin"));
  160.  
  161.  
  162.         MostrarTexts(playerid);
  163.         //ESCONDER TEXTS NÃO NECESSÁRIOS
  164.         PlayerTextDrawHide(playerid, Jogador[playerid][HScript][7]);
  165.         PlayerTextDrawHide(playerid, Jogador[playerid][HScript][9]);
  166.         PlayerTextDrawHide(playerid, Jogador[playerid][HScript][10]);
  167.         PlayerTextDrawHide(playerid, Jogador[playerid][HScript][12]);
  168.         PlayerTextDrawHide(playerid, Jogador[playerid][HScript][13]);
  169.         PlayerTextDrawHide(playerid, Jogador[playerid][HScript][14]);
  170.         //===========================================================
  171.         PlayerTextDrawSetString(playerid, Jogador[playerid][HScript][2], "LOGIN");
  172.     }
  173.     else
  174.     {
  175.         PlayerTextDrawSetPreviewModel(playerid, Jogador[playerid][HScript][16], 300000);
  176.         MostrarTexts(playerid);
  177.     }
  178.     return 1;
  179. }
  180.  
  181. public OnPlayerDisconnect(playerid, reason)
  182. {
  183.     DestruirTexts(playerid);
  184.  
  185.     //VARIAVEIS DO JOGADOR SETADAS PARA 0 & FALSE
  186.     Jogador[playerid][Logado] = false;
  187.     Jogador[playerid][CSenha] = false;
  188.     Jogador[playerid][CEmail] = false;
  189.     return 1;
  190. }
  191.  
  192. public OnPlayerText(playerid, text[])
  193. {
  194.     if(Jogador[playerid][Logado] == false)
  195.     {
  196.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não pode fazer isto..");
  197.         return 0;
  198.     }
  199.    
  200.     if(Jogador[playerid][Mutado] == true)
  201.     {
  202.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você está mutado e não pode falar nada.");
  203.         return 0;
  204.     }
  205.  
  206.     //DAQUI PRA BAIXO COLOQUE SUAS TAGS ETC...
  207.     new string[128];
  208.    
  209.     SetPlayerChatBubble(playerid, text, C_Vermelho, 50.0, 10000);
  210.    
  211.     format(string, sizeof(string), "{FFFFFF}[%s{FFFFFF}] %s diz: %s", GetPlayerTag(playerid), Nome(playerid), text);
  212.     Chat(-1, string);
  213.     return 0;
  214. }
  215.  
  216. public OnPlayerCommandPerformed(playerid, cmdtext[], success)
  217. {
  218.     if(Jogador[playerid][Logado] == false)
  219.     {
  220.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não pode fazer isto..");
  221.         return 1;
  222.     }
  223.  
  224.     if(!success)
  225.     {
  226.         SendClientMessage(playerid, C_Vermelho,"Desculpe, mas o comando não existe! Tente outro.");
  227.         return 1;
  228.     }
  229.     return 1;
  230. }
  231.  
  232. CMD:lrcon(playerid)
  233. {
  234.     if(strcmp(Nome(playerid), P_RCON, true) == 0)
  235.     {
  236.         if(Jogador[playerid][Rcon] == false)
  237.         {
  238.             SendClientMessage(playerid, C_Verde, "Bem vindo(a)! Agora você está conectado(a) na rcon do servidor.");
  239.             Jogador[playerid][Rcon] = true;
  240.         }
  241.         else
  242.         {
  243.             SendClientMessage(playerid, C_Vermelho, "Você acaba de deslogar-se da rcon.");
  244.             Jogador[playerid][Rcon] = false;
  245.         }
  246.     }
  247.     else
  248.     {
  249.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  250.     }
  251.     return 1;
  252. }
  253.  
  254. CMD:trabalhar(playerid)
  255. {
  256.     if(Jogador[playerid][Staff] > 0)
  257.     {
  258.         if(Jogador[playerid][Trabalhando] == false)
  259.         {
  260.             new string[128];
  261.             format(string, sizeof(string), "O Staff %s apartir de agora está ativa!", Nome(playerid));
  262.             SendClientMessageToAll(C_Amarelo, string);
  263.            
  264.             Jogador[playerid][Trabalhando] = true;
  265.         }
  266.         else
  267.         {
  268.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você já está trabalhando! /jogar");
  269.         }
  270.     }
  271.     else
  272.     {
  273.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  274.     }
  275.     return 1;
  276. }
  277.  
  278. CMD:jogar(playerid)
  279. {
  280.     if(Jogador[playerid][Staff] > 0)
  281.     {
  282.         if(Jogador[playerid][Trabalhando] == true)
  283.         {
  284.             new string[128];
  285.             format(string, sizeof(string), "O Staff %s apartir de agora está jogando como membro.", Nome(playerid));
  286.             Chat(C_Amarelo, string);
  287.             Jogador[playerid][Trabalhando] = false;
  288.         }
  289.         else
  290.         {
  291.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você já está jogando! /trabalhar");
  292.         }
  293.     }
  294.     else
  295.     {
  296.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  297.     }
  298.     return 1;
  299. }
  300.  
  301. CMD:mutar(playerid, params[])
  302. {
  303.     new jogador, string[128];
  304.     if(Jogador[playerid][Staff] > 0 || Jogador[playerid][Rcon] == true)
  305.     {
  306.         if(Jogador[playerid][Trabalhando] == true)
  307.         {
  308.             if(sscanf(params, "u", jogador))
  309.             {
  310.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /mutar [id]");
  311.                 return 1;
  312.             }
  313.             if(IsPlayerConnected(jogador))
  314.             {
  315.                 if(Jogador[jogador][Mutado] == false)
  316.                 {
  317.                     Jogador[jogador][Mutado] = true;
  318.  
  319.                     format(string, sizeof(string), "O jogador %s acaba de ser mutado pelo staff %s.", Nome(jogador), Nome(playerid));
  320.                     Chat(C_Vermelho, string);
  321.                 }
  322.                 else
  323.                 {
  324.                     SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador já está mutado.");
  325.                 }
  326.             }
  327.             else
  328.             {
  329.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não está online.");
  330.             }
  331.         }
  332.         else
  333.         {
  334.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  335.         }
  336.     }
  337.     else
  338.     {
  339.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  340.     }
  341.     return 1;
  342. }
  343.  
  344. CMD:desmutar(playerid, params[])
  345. {
  346.     new jogador, string[128];
  347.     if(Jogador[playerid][Staff] > 0 || Jogador[playerid][Rcon] == true)
  348.     {
  349.         if(Jogador[playerid][Trabalhando] == true)
  350.         {
  351.             if(sscanf(params, "u", jogador))
  352.             {
  353.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /desmutar [id]");
  354.                 return 1;
  355.             }
  356.             if(IsPlayerConnected(jogador))
  357.             {
  358.                 if(Jogador[jogador][Mutado] == true)
  359.                 {
  360.                     Jogador[jogador][Mutado] = false;
  361.  
  362.                     format(string, sizeof(string), "O jogador %s foi desmutado pelo staff %s.", Nome(jogador), Nome(playerid));
  363.                     Chat(C_Vermelho, string);
  364.                 }
  365.                 else
  366.                 {
  367.                     SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não está mutado.");
  368.                 }
  369.             }
  370.             else
  371.             {
  372.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não está online.");
  373.             }
  374.         }
  375.         else
  376.         {
  377.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  378.         }
  379.     }
  380.     else
  381.     {
  382.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  383.     }
  384.     return 1;
  385. }
  386.  
  387. CMD:ir(playerid, params[])
  388. {
  389.     new jogador, string[128], Float:x, Float:y, Float:z;
  390.     if(Jogador[playerid][Staff] > 0 || Jogador[playerid][Rcon] == true)
  391.     {
  392.         if(Jogador[playerid][Trabalhando] == true)
  393.         {
  394.             if(sscanf(params, "u", jogador))
  395.             {
  396.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /ir [id]");
  397.                 return 1;
  398.             }
  399.             if(IsPlayerConnected(jogador))
  400.             {
  401.                 GetPlayerPos(jogador, x, y, z);
  402.                 SetPlayerInterior(playerid, GetPlayerInterior(jogador));
  403.  
  404.                 if(IsPlayerInAnyVehicle(playerid))
  405.                 {
  406.                     SetVehiclePos(GetPlayerVehicleID(playerid), x+2, y+2, z);
  407.                     PutPlayerInVehicle(playerid, GetPlayerVehicleID(playerid), 0);
  408.                 }
  409.                 else
  410.                 {
  411.                     SetPlayerPos(playerid, x+2, y+2, z);
  412.                 }
  413.                
  414.                 format(string, sizeof(string), "O staff %s foi até você ajuda-lo(a)!", Nome(playerid));
  415.                 SendClientMessage(jogador, C_Vermelho, string);
  416.             }
  417.             else
  418.             {
  419.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não está online.");
  420.             }
  421.         }
  422.         else
  423.         {
  424.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  425.         }
  426.     }
  427.     else
  428.     {
  429.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  430.     }
  431.     return 1;
  432. }
  433.  
  434. CMD:trazer(playerid, params[])
  435. {
  436.     new jogador, string[128], Float:x, Float:y, Float:z;
  437.     if(Jogador[playerid][Staff] > 0 || Jogador[playerid][Rcon] == true)
  438.     {
  439.         if(Jogador[playerid][Trabalhando] == true)
  440.         {
  441.             if(sscanf(params, "u", jogador))
  442.             {
  443.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /trazer [id]");
  444.                 return 1;
  445.             }
  446.             if(IsPlayerConnected(jogador))
  447.             {
  448.                 GetPlayerPos(playerid, x, y, z);
  449.                 SetPlayerInterior(jogador, GetPlayerInterior(playerid));
  450.  
  451.                 if(IsPlayerInAnyVehicle(jogador))
  452.                 {
  453.                     SetVehiclePos(GetPlayerVehicleID(jogador), x+2, y+2, z);
  454.                     PutPlayerInVehicle(jogador, GetPlayerVehicleID(jogador), 0);
  455.                 }
  456.                 else
  457.                 {
  458.                     SetPlayerPos(jogador, x+2, y+2, z);
  459.                 }
  460.  
  461.                 format(string, sizeof(string), "O staff %s trouxe você até ele(a)!", Nome(playerid));
  462.                 SendClientMessage(jogador, C_Vermelho, string);
  463.             }
  464.             else
  465.             {
  466.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não está online.");
  467.             }
  468.         }
  469.         else
  470.         {
  471.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  472.         }
  473.     }
  474.     else
  475.     {
  476.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  477.     }
  478.     return 1;
  479. }
  480.  
  481. CMD:darscore(playerid, params[])
  482. {
  483.     new jogador, quantia, string[128];
  484.     if(Jogador[playerid][Staff] > 1 || Jogador[playerid][Rcon] == true)
  485.     {
  486.         if(Jogador[playerid][Trabalhando] == true)
  487.         {
  488.             if(sscanf(params, "ud", jogador, quantia))
  489.             {
  490.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /darscore [id] [quantia]");
  491.                 return 1;
  492.             }
  493.  
  494.             DarScore(jogador, quantia);
  495.  
  496.             format(string, sizeof(string), "O staff %s acaba de ser te dar %d scores!", Nome(playerid), quantia);
  497.             SendClientMessage(jogador, C_Vermelho, string);
  498.  
  499.             SendClientMessage(playerid, C_Verde, "O score foi setado com sucesso!");
  500.         }
  501.         else
  502.         {
  503.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  504.         }
  505.     }
  506.     else
  507.     {
  508.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  509.     }
  510.     return 1;
  511. }
  512.  
  513. CMD:resetarscore(playerid, params[])
  514. {
  515.     new jogador, arq[128], string[128];
  516.     if(Jogador[playerid][Staff] > 1 || Jogador[playerid][Rcon] == true)
  517.     {
  518.         if(Jogador[playerid][Trabalhando] == true)
  519.         {
  520.             if(sscanf(params, "u", jogador))
  521.             {
  522.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /resetarscore [id]");
  523.                 return 1;
  524.             }
  525.  
  526.             format(arq, sizeof(arq), A_USUARIOS, Nome(jogador));
  527.             if(DOF2_FileExists(arq))
  528.             {
  529.                 SetPlayerScore(jogador, 0);
  530.                 DOF2_SetInt(arq, "Score", 0);
  531.                 DOF2_SaveFile();
  532.  
  533.                 format(string, sizeof(string), "O staff %s resetou seu score!", Nome(playerid));
  534.                 SendClientMessage(jogador, C_Vermelho, string);
  535.  
  536.                 SendClientMessage(playerid, C_Verde, "O score do jogador foi resetado com sucesso!");
  537.             }
  538.             else
  539.             {
  540.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não existe.");
  541.             }
  542.         }
  543.         else
  544.         {
  545.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  546.         }
  547.     }
  548.     else
  549.     {
  550.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  551.     }
  552.     return 1;
  553. }
  554.  
  555. CMD:skin(playerid, params[])
  556. {
  557.     new jogador, arq[128], skin, string[128];
  558.     if(Jogador[playerid][Staff] > 1 || Jogador[playerid][Rcon] == true)
  559.     {
  560.         if(Jogador[playerid][Trabalhando] == true)
  561.         {
  562.             if(sscanf(params, "ud", jogador, skin))
  563.             {
  564.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /skin [id] [skin]");
  565.                 return 1;
  566.             }
  567.            
  568.             if(skin >= 0 || skin <= 299)
  569.             {
  570.                 if(IsPlayerConnected(jogador))
  571.                 {
  572.                     format(arq, sizeof(arq), A_USUARIOS, Nome(jogador));
  573.                     if(DOF2_FileExists(arq))
  574.                     {
  575.                         SetPlayerSkin(jogador, skin);
  576.                         DOF2_SetInt(arq, "Skin", skin);
  577.                         DOF2_SaveFile();
  578.  
  579.                         format(string, sizeof(string), "O staff %s acaba de ser te setar a skin: %d!", Nome(playerid), skin);
  580.                         SendClientMessage(jogador, C_Vermelho, string);
  581.  
  582.                         SendClientMessage(playerid, C_Verde, "A skin do jogador foi alterada com sucesso!");
  583.                     }
  584.                     else
  585.                     {
  586.                         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não existe.");
  587.                     }
  588.                 }
  589.                 else
  590.                 {
  591.                     SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não está online.");
  592.                 }
  593.             }
  594.             else
  595.             {
  596.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas está skin não existe. Tente outra de 0 a 299!");
  597.             }
  598.         }
  599.         else
  600.         {
  601.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  602.         }
  603.     }
  604.     else
  605.     {
  606.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  607.     }
  608.     return 1;
  609. }
  610.  
  611. CMD:dardinheiro(playerid, params[])
  612. {
  613.     new jogador, quantia, string[128];
  614.     if(Jogador[playerid][Staff] > 1 || Jogador[playerid][Rcon] == true)
  615.     {
  616.         if(Jogador[playerid][Trabalhando] == true)
  617.         {
  618.             if(sscanf(params, "ud", jogador, quantia))
  619.             {
  620.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /dardinheiro [id] [quantia]");
  621.                 return 1;
  622.             }
  623.  
  624.             DarDinheiro(jogador, quantia);
  625.  
  626.             format(string, sizeof(string), "O staff %s acaba de ser te dar R$%d para gastar!", Nome(playerid), quantia);
  627.             SendClientMessage(jogador, C_Vermelho, string);
  628.            
  629.             SendClientMessage(playerid, C_Verde, "O dinheiro foi enviado com sucesso!");
  630.         }
  631.         else
  632.         {
  633.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  634.         }
  635.     }
  636.     else
  637.     {
  638.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  639.     }
  640.     return 1;
  641. }
  642.  
  643. CMD:resetardinheiro(playerid, params[])
  644. {
  645.     new jogador, arq[128], string[128];
  646.     if(Jogador[playerid][Staff] > 1 || Jogador[playerid][Rcon] == true)
  647.     {
  648.         if(Jogador[playerid][Trabalhando] == true)
  649.         {
  650.             if(sscanf(params, "u", jogador))
  651.             {
  652.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /resetardinheiro [id]");
  653.                 return 1;
  654.             }
  655.  
  656.             format(arq, sizeof(arq), A_USUARIOS, Nome(jogador));
  657.             if(DOF2_FileExists(arq))
  658.             {
  659.                 ResetPlayerMoney(jogador);
  660.                 DOF2_SetInt(arq, "Dinheiro", 0);
  661.                 DOF2_SaveFile();
  662.  
  663.                 format(string, sizeof(string), "O staff %s resetou seu dinheiro!", Nome(playerid));
  664.                 SendClientMessage(jogador, C_Vermelho, string);
  665.  
  666.                 SendClientMessage(playerid, C_Verde, "O dinheiro do jogador foi resetado com sucesso!");
  667.             }
  668.             else
  669.             {
  670.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não existe.");
  671.             }
  672.         }
  673.         else
  674.         {
  675.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  676.         }
  677.     }
  678.     else
  679.     {
  680.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  681.     }
  682.     return 1;
  683. }
  684.  
  685. CMD:kickar(playerid, params[])
  686. {
  687.     new jogador, motivo[128], string[128];
  688.     if(Jogador[playerid][Staff] > 0 || Jogador[playerid][Rcon] == true)
  689.     {
  690.         if(Jogador[playerid][Trabalhando] == true)
  691.         {
  692.             if(sscanf(params, "us[128]", jogador, motivo))
  693.             {
  694.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /kickar [id] [motivo]");
  695.                 return 1;
  696.             }
  697.  
  698.             Kick(jogador);
  699.  
  700.             format(string, sizeof(string), "O jogador %s acaba de ser kickado pelo staff %s. motivo: %s", Nome(jogador), Nome(playerid), motivo);
  701.             Chat(C_Vermelho, string);
  702.         }
  703.         else
  704.         {
  705.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  706.         }
  707.     }
  708.     else
  709.     {
  710.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  711.     }
  712.     return 1;
  713. }
  714.  
  715. CMD:banir(playerid, params[])
  716. {
  717.     new jogador[MAX_PLAYER_NAME], motivo[128], arq[128], string[256], string2[128];
  718.     new ano, mes, dia, data[30];
  719.    
  720.     if(Jogador[playerid][Staff] > 0 || Jogador[playerid][Rcon] == true)
  721.     {
  722.         if(Jogador[playerid][Trabalhando] == true)
  723.         {
  724.             if(sscanf(params, "s[24]s[128]", jogador, motivo))
  725.             {
  726.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /banir [jogador] [motivo]");
  727.                 return 1;
  728.             }
  729.  
  730.             format(arq, sizeof(arq), A_USUARIOS, jogador);
  731.             if(DOF2_FileExists(arq))
  732.             {
  733.                 format(arq, sizeof(arq), A_BANIDOS, jogador);
  734.                 HBan(arq, Nome(playerid), motivo);
  735.  
  736.                 if(IsPlayerConnected(GetPlayerID(jogador)))
  737.                 {
  738.                     getdate(ano, mes, dia);
  739.                     format(data, sizeof(data), "%02d/%02d/%d", dia, mes, ano);
  740.  
  741.                     format(string2, sizeof(string2), "Você foi banido(a) do servidor!\n");
  742.                     strcat(string, string2);
  743.                     format(string2, sizeof(string2), "{FF0000}Por: {FFFFFF}%s\n", Nome(playerid));
  744.                     strcat(string, string2);
  745.                     format(string2, sizeof(string2), "{FF0000}Data: {FFFFFF}%s\n\n", data);
  746.                     strcat(string, string2);
  747.                     format(string2, sizeof(string2), "{FF0000}Motivo: {FFFFFF}%s\n", motivo);
  748.                     strcat(string, string2);
  749.  
  750.                     ShowPlayerDialog(GetPlayerID(jogador), 0, DIALOG_STYLE_MSGBOX, "VOCÊ ESTÁ BANIDO(A)!", string, "OK", "");
  751.                     SetTimerEx("Kickar", 1200, false, "d", GetPlayerID(jogador));
  752.                 }
  753.  
  754.                 format(string, sizeof(string), "O jogador %s foi banido pelo staff %s. motivo: %s", jogador, Nome(playerid), motivo);
  755.                 printf("%s", string);
  756.                 Chat(C_Vermelho, string);
  757.             }
  758.             else
  759.             {
  760.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não se encontra registrado no servidor.");
  761.             }
  762.         }
  763.         else
  764.         {
  765.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  766.         }
  767.     }
  768.     else
  769.     {
  770.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  771.     }
  772.     return 1;
  773. }
  774.  
  775. CMD:desbanir(playerid, params[])
  776. {
  777.     new jogador[MAX_PLAYER_NAME], arq[128], string[128];
  778.  
  779.     if(Jogador[playerid][Staff] > 0 || Jogador[playerid][Rcon] == true)
  780.     {
  781.         if(Jogador[playerid][Trabalhando] == true)
  782.         {
  783.             if(sscanf(params, "s[24]", jogador))
  784.             {
  785.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /desbanir [jogador]");
  786.                 return 1;
  787.             }
  788.  
  789.             format(arq, sizeof(arq), A_BANIDOS, jogador);
  790.             if(DOF2_FileExists(arq))
  791.             {
  792.                 DOF2_RemoveFile(arq);
  793.  
  794.                 format(string, sizeof(string), "O jogador %s foi desbanido pelo staff %s.", jogador, Nome(playerid));
  795.                 printf("%s", string);
  796.                 Chat(C_Vermelho, string);
  797.             }
  798.             else
  799.             {
  800.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não se encontra banido.");
  801.             }
  802.         }
  803.         else
  804.         {
  805.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  806.         }
  807.     }
  808.     else
  809.     {
  810.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  811.     }
  812.     return 1;
  813. }
  814.  
  815. CMD:an(playerid, params[])
  816. {
  817.     new text[128], string[128];
  818.     if(Jogador[playerid][Staff] > 1 || Jogador[playerid][Rcon] == true)
  819.     {
  820.         if(Jogador[playerid][Trabalhando] == true)
  821.         {
  822.             if(sscanf(params, "s[128]", text))
  823.             {
  824.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /an [mensagem]");
  825.                 return 1;
  826.             }
  827.  
  828.             format(string, sizeof(string), "~r~%s ~w~diz:~n~%s", Nome(playerid), text);
  829.             GameTextForAll(string, 5000, 1);
  830.         }
  831.         else
  832.         {
  833.             SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você precisa estar trabalhando para usar este comando.");
  834.         }
  835.     }
  836.     else
  837.     {
  838.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  839.     }
  840.     return 1;
  841. }
  842.  
  843. CMD:cs(playerid, params[])
  844. {
  845.     new text[128], string[128];
  846.     if(Jogador[playerid][Staff] > 0 || Jogador[playerid][Rcon] == true)
  847.     {
  848.         if(sscanf(params, "s[128]", text))
  849.         {
  850.             SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /cs [mensagem]");
  851.             return 1;
  852.         }
  853.  
  854.         format(string, sizeof(string), "{FFFFFF}[{FFF000}CHAT STAFF{FFFFFF}] %s diz: %s", Nome(playerid), text);
  855.         Chat(-1, string);
  856.     }
  857.     else
  858.     {
  859.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  860.     }
  861.     return 1;
  862. }
  863.  
  864. CMD:adm(playerid, params[])
  865. {
  866.     new arq[128], string[128], jogador[MAX_PLAYER_NAME], level;
  867.     if(Jogador[playerid][Rcon] == true)
  868.     {
  869.         if(!strcmp(params, "tirar ", false, 6))
  870.         {
  871.             if(sscanf(params, "s[10]s[24]", "tirar", jogador))
  872.             {
  873.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /adm tirar [jogador]");
  874.                 return 1;
  875.             }
  876.  
  877.             format(string, sizeof(string), "%s", jogador);
  878.             new us = GetPlayerID(string);
  879.  
  880.             format(arq, sizeof(arq), A_USUARIOS, jogador);
  881.  
  882.             if(DOF2_FileExists(arq) && DOF2_GetInt(arq, "Staff") > 0)
  883.             {
  884.                 if(IsPlayerConnected(us))
  885.                 {
  886.                     DOF2_SetInt(arq, "Staff", 0);
  887.                     DOF2_SaveFile();
  888.                     Jogador[us][Staff] = 0;
  889.  
  890.                     if(!(playerid == us))
  891.                     {
  892.                         format(string, sizeof(string), "O staff %s, acaba de remover você da equipe.", Nome(playerid));
  893.                         SendClientMessage(us, C_Amarelo, string);
  894.                     }
  895.                     else
  896.                     {
  897.                         SendClientMessage(playerid, C_Amarelo, "Você tirou você mesmo da staff.");
  898.                     }
  899.                 }
  900.                 else
  901.                 {
  902.                     DOF2_SetInt(arq, "Staff", 0);
  903.                     DOF2_SaveFile();
  904.                 }
  905.  
  906.                 SendClientMessage(playerid, C_Amarelo, "O jogador foi removido da staff com sucesso.");
  907.             }
  908.             else
  909.             {
  910.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não é um staff.");
  911.             }
  912.             return 1;
  913.         }
  914.         else if(!strcmp(params, "dar ", false, 4))
  915.         {
  916.             if(sscanf(params, "s[8]s[24]d", "dar", jogador, level))
  917.             {
  918.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /adm dar [jogador] [level]");
  919.                 return 1;
  920.             }
  921.  
  922.             format(string, sizeof(string), "%s", jogador);
  923.             new us = GetPlayerID(string);
  924.  
  925.             format(arq, sizeof(arq), A_USUARIOS, jogador);
  926.  
  927.             if(DOF2_FileExists(arq) && DOF2_GetInt(arq, "Staff") == 0)
  928.             {
  929.                 if(level <= 0 || level > 2)
  930.                 {
  931.                     SendClientMessage(playerid, C_Vermelho, "Desculpe, mas os leveis staff vão de 1 a 2.");
  932.                 }
  933.                 else
  934.                 {
  935.                     if(IsPlayerConnected(us))
  936.                     {
  937.                         DOF2_SetInt(arq, "Staff", level);
  938.                         DOF2_SaveFile();
  939.                         Jogador[us][Staff] = level;
  940.  
  941.                         if(!(playerid == us))
  942.                         {
  943.                             format(string, sizeof(string), "O staff %s, acaba de colocar você também como staff.", Nome(playerid));
  944.                             SendClientMessage(us, C_Amarelo, string);
  945.                         }
  946.                         else
  947.                         {
  948.                             SendClientMessage(playerid, C_Amarelo, "Você se colocou como staff.");
  949.                         }
  950.                     }
  951.                     else
  952.                     {
  953.                         DOF2_SetInt(arq, "Staff", level);
  954.                         DOF2_SaveFile();
  955.                     }
  956.  
  957.                     SendClientMessage(playerid, C_Amarelo, "O jogador foi adicionado como staff com sucesso.");
  958.                 }
  959.             }
  960.             else
  961.             {
  962.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não existe ou já é um staff.");
  963.             }
  964.             return 1;
  965.         }
  966.         else if(!strcmp(params, "level ", false, 6))
  967.         {
  968.             if(sscanf(params, "s[10]s[24]d", "level", jogador, level))
  969.             {
  970.                 SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /adm level [jogador] [level]");
  971.                 return 1;
  972.             }
  973.  
  974.             format(string, sizeof(string), "%s", jogador);
  975.             new us = GetPlayerID(string);
  976.  
  977.             format(arq, sizeof(arq), A_USUARIOS, jogador);
  978.  
  979.             if(DOF2_FileExists(arq) && DOF2_GetInt(arq, "Staff") > 0)
  980.             {
  981.                 if(level < 1 || level > 2)
  982.                 {
  983.                     SendClientMessage(playerid, C_Vermelho, "Desculpe, mas os leveis staff vão de 1 a 2.");
  984.                     return 1;
  985.                 }
  986.                 else
  987.                 {
  988.                     if(DOF2_GetInt(arq, "Staff") == level)
  989.                     {
  990.                         if(IsPlayerConnected(us))
  991.                         {
  992.                             DOF2_SetInt(arq, "Staff", level);
  993.                             DOF2_SaveFile();
  994.                             Jogador[us][Staff] = level;
  995.  
  996.                             if(!(playerid == us))
  997.                             {
  998.                                 format(string, sizeof(string), "O staff %s, acaba de colocar você também como staff.", Nome(playerid));
  999.                                 SendClientMessage(us, C_Amarelo, string);
  1000.                             }
  1001.                             else
  1002.                             {
  1003.                                 SendClientMessage(playerid, C_Amarelo, "Você alterou seu level staff.");
  1004.                             }
  1005.                         }
  1006.                         else
  1007.                         {
  1008.                             DOF2_SetInt(arq, "Staff", level);
  1009.                             DOF2_SaveFile();
  1010.                         }
  1011.  
  1012.                         SendClientMessage(playerid, C_Amarelo, "O jogador teve seu level staff alterado com sucesso.");
  1013.                     }
  1014.                     else
  1015.                     {
  1016.                         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este staff já está nesse level.");
  1017.                     }
  1018.                 }
  1019.             }
  1020.             else
  1021.             {
  1022.                 SendClientMessage(playerid, C_Vermelho, "Desculpe, mas este jogador não é um staff.");
  1023.             }
  1024.             return 1;
  1025.         }
  1026.         SendClientMessage(playerid, C_Vermelho, "Ops! Digite: /adm [dar | level | tirar]");
  1027.     }
  1028.     else
  1029.     {
  1030.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não tem permissão.");
  1031.     }
  1032.     return 1;
  1033. }
  1034.  
  1035. CMD:mudarsenha(playerid)
  1036. {
  1037.     ShowPlayerDialog(playerid, 4, DIALOG_STYLE_PASSWORD, "MUDAR || SENHA", "{FFFFFF}Digite abaixo a nova senha que você deseja.", "OK", "SAIR");
  1038.     return 1;
  1039. }
  1040.  
  1041. CMD:mudaremail(playerid)
  1042. {
  1043.     ShowPlayerDialog(playerid, 5, DIALOG_STYLE_INPUT, "MUDAR || E-MAIL", "{FFFFFF}Digite abaixo o novo e-mail que você deseja.", "OK", "SAIR");
  1044.     return 1;
  1045. }
  1046.  
  1047. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  1048. {
  1049.     if(newkeys == KEY_SUBMISSION)
  1050.     {
  1051.         if(Jogador[playerid][Logado] == false)
  1052.         {
  1053.             SelectTextDraw(playerid, C_Amarelo);
  1054.         }
  1055.     }
  1056.     return 1;
  1057. }
  1058.  
  1059. public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
  1060. {
  1061.     new string[256], arq[128];
  1062.     format(arq, sizeof(arq), A_USUARIOS, Nome(playerid));
  1063.  
  1064.     if(playertextid == Jogador[playerid][HScript][15])//APERTAR EM SAIR
  1065.     {
  1066.         DestruirTexts(playerid);
  1067.         Kick(playerid);
  1068.         return 1;
  1069.     }
  1070.  
  1071.     if(playertextid == Jogador[playerid][HScript][14])//APERTAR GÊNERO FEMININO
  1072.     {
  1073.         //DELETAR E CRIAR NOVA PREVIEW MODEL NO REGISTRO
  1074.         PlayerTextDrawDestroy(playerid, Jogador[playerid][HScript][16]);
  1075.         Jogador[playerid][HScript][16] = PlayerText:INVALID_TEXT_DRAW;
  1076.  
  1077.         Jogador[playerid][HScript][16] = CreatePlayerTextDraw(playerid, 152.720764, 157.429977, "New Textdraw");
  1078.         PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][16], 0.449999, 1.600000);
  1079.         PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][16], 101.599945, 203.690704);
  1080.         PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][16], 1);
  1081.         PlayerTextDrawColor(playerid, Jogador[playerid][HScript][16], -1);
  1082.         PlayerTextDrawUseBox(playerid, Jogador[playerid][HScript][16], true);
  1083.         PlayerTextDrawBoxColor(playerid, Jogador[playerid][HScript][16], 0);
  1084.         PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][16], 0);
  1085.         PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][16], 1);
  1086.         PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][16], 51);
  1087.         PlayerTextDrawFont(playerid, Jogador[playerid][HScript][16], 5);
  1088.         PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][16], 1);
  1089.         PlayerTextDrawSetPreviewRot(playerid, Jogador[playerid][HScript][16], 0.000000, 0.000000, 0.000000, 1.000000);
  1090.  
  1091.         PlayerTextDrawSetPreviewModel(playerid, Jogador[playerid][HScript][16], SKIN_FEMININA);
  1092.  
  1093.         PlayerTextDrawShow(playerid, Jogador[playerid][HScript][16]);
  1094.         //===============================================================================================
  1095.  
  1096.         PlayerTextDrawSetString(playerid, Jogador[playerid][HScript][13], "~w~MASCULINO");
  1097.         PlayerTextDrawSetString(playerid, Jogador[playerid][HScript][14], "~r~FEMININO");
  1098.         Jogador[playerid][Genero] = 2;
  1099.         return 1;
  1100.     }
  1101.  
  1102.     if(playertextid == Jogador[playerid][HScript][13])//APERTAR GÊNERO MASCULINO
  1103.     {
  1104.         //DELETAR E CRIAR NOVA PREVIEW MODEL NO REGISTRO
  1105.         PlayerTextDrawDestroy(playerid, Jogador[playerid][HScript][16]);
  1106.         Jogador[playerid][HScript][16] = PlayerText:INVALID_TEXT_DRAW;
  1107.  
  1108.         Jogador[playerid][HScript][16] = CreatePlayerTextDraw(playerid, 152.720764, 157.429977, "New Textdraw");
  1109.         PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][16], 0.449999, 1.600000);
  1110.         PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][16], 101.599945, 203.690704);
  1111.         PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][16], 1);
  1112.         PlayerTextDrawColor(playerid, Jogador[playerid][HScript][16], -1);
  1113.         PlayerTextDrawUseBox(playerid, Jogador[playerid][HScript][16], true);
  1114.         PlayerTextDrawBoxColor(playerid, Jogador[playerid][HScript][16], 0);
  1115.         PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][16], 0);
  1116.         PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][16], 1);
  1117.         PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][16], 51);
  1118.         PlayerTextDrawFont(playerid, Jogador[playerid][HScript][16], 5);
  1119.         PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][16], 1);
  1120.         PlayerTextDrawSetPreviewRot(playerid, Jogador[playerid][HScript][16], 0.000000, 0.000000, 0.000000, 1.000000);
  1121.  
  1122.         PlayerTextDrawSetPreviewModel(playerid, Jogador[playerid][HScript][16], SKIN_MASCULINA);
  1123.  
  1124.         PlayerTextDrawShow(playerid, Jogador[playerid][HScript][16]);
  1125.         //===============================================================================================
  1126.  
  1127.         PlayerTextDrawSetString(playerid, Jogador[playerid][HScript][13], "~r~MASCULINO");
  1128.         PlayerTextDrawSetString(playerid, Jogador[playerid][HScript][14], "~w~FEMININO");
  1129.         Jogador[playerid][Genero] = 1;
  1130.         return 1;
  1131.     }
  1132.  
  1133.     if(playertextid == Jogador[playerid][HScript][11])//APERTAR REGISTRAR SENHA
  1134.     {
  1135.         if(DOF2_FileExists(arq))
  1136.         {
  1137.             ShowPlayerDialog(playerid, 3, DIALOG_STYLE_PASSWORD, "LOGIN || SENHA", "{FFFFFF}Digite abaixo sua senha para você poder logar no servidor..", "OK", "VOLTAR");
  1138.             return 1;
  1139.         }
  1140.         //SE NÃO FOR REGISTRADO IRÁ MOSTRAR A DIALOG DE REGISTRO
  1141.  
  1142.         ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "REGISTRO || SENHA", "{FFFFFF}Digite abaixo uma senha para ser cadastrada a sua conta.", "OK", "VOLTAR");
  1143.         return 1;
  1144.     }
  1145.  
  1146.     if(playertextid == Jogador[playerid][HScript][10])//APERTAR REGISTRAR E-MAIL
  1147.     {
  1148.         ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "REGISTRO || E-MAIL", "{FFFFFF}Digite abaixo seu e-mail para ele ser cadastrado a sua conta.\n\n{FFF000}Exemplo: exemplo@gmail.com", "OK", "VOLTAR");
  1149.         return 1;
  1150.     }
  1151.  
  1152.     if(playertextid == Jogador[playerid][HScript][2])//APERTAR EM LOGIN E CRIAR CONTA
  1153.     {
  1154.         if(DOF2_FileExists(arq))
  1155.         {
  1156.             if(Jogador[playerid][CSenha] == true)
  1157.             {
  1158.                 CancelSelectTextDraw(playerid);
  1159.                 CarregarJogador(playerid);
  1160.             }
  1161.             else
  1162.             {
  1163.                 ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "LOGAR || ERRO", "{FF0000}Desculpe, mas você deve digitar sua senha corretamente, para poder logar!", "OK", "");
  1164.             }
  1165.         }
  1166.         else
  1167.         {
  1168.             if(Jogador[playerid][CEmail] == true && Jogador[playerid][CSenha] == true && Jogador[playerid][Genero] >= 1)
  1169.             {
  1170.                 CancelSelectTextDraw(playerid);
  1171.  
  1172.                 printf("Novo(a) jogador(a) registrado(a): %s", Nome(playerid));
  1173.                 CriarConta(arq, Jogador[playerid][Email], Jogador[playerid][Senha], Jogador[playerid][Genero]);
  1174.                 CarregarJogador(playerid);
  1175.             }
  1176.             else
  1177.             {
  1178.                 if(!(Jogador[playerid][CEmail] == true))
  1179.                 {
  1180.                     strcat(string, "{FF0000}Você deve preencher o campo de e-mail para continuar.\n\n", sizeof(string));
  1181.                 }
  1182.  
  1183.                 if(!(Jogador[playerid][CSenha] == true))
  1184.                 {
  1185.                     strcat(string, "{FF0000}Você deve preencher o campo de senha para continuar.\n\n", sizeof(string));
  1186.                 }
  1187.  
  1188.                 if(!(Jogador[playerid][Genero] >=1))
  1189.                 {
  1190.                     strcat(string, "{FF0000}Você deve selecionar seu gênero para continuar.\n\n", sizeof(string));
  1191.                 }
  1192.  
  1193.                 ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "REGISTRO || ERRO", string, "OK", "");
  1194.             }
  1195.         }
  1196.     }
  1197.     return 1;
  1198. }
  1199.  
  1200. public OnPlayerSpawn(playerid)
  1201. {
  1202.     if(Jogador[playerid][Logado] == false)
  1203.     {
  1204.         SendClientMessage(playerid, C_Vermelho, "Desculpe, mas você não pode fazer isto..");
  1205.         Kick(playerid);
  1206.         return 1;
  1207.     }
  1208.     return 1;
  1209. }
  1210.  
  1211. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  1212. {
  1213.     new string[256], arq[128];
  1214.     format(arq, sizeof(arq), A_USUARIOS, Nome(playerid));
  1215.  
  1216.     switch(dialogid)
  1217.     {
  1218.         case 1: //REGISTRO E-MAIL
  1219.         {
  1220.             if(response == 1)
  1221.             {
  1222.                 if(strlen(inputtext) < 5)
  1223.                 {
  1224.                     ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "REGISTRO || E-MAIL", "{FF0000}Desculpe, mas seu e-mail deve conter no minimo 5 digitos!\n{FFFFFF}Digite abaixo seu e-mail para ele ser cadastrado a sua conta.\n\n{FFF000}Exemplo: exemplo@gmail.com", "OK", "VOLTAR");
  1225.                     return 1;
  1226.                 }
  1227.  
  1228.                 if(strfind(inputtext, "@", true) != -1 && strfind(inputtext, ".", true) != -1)
  1229.                 {
  1230.                     Jogador[playerid][CEmail] = true;
  1231.  
  1232.                     format(Jogador[playerid][Email], 128, "%s", inputtext); //ISTO SETA O E-MAIL NA VARIAVEL
  1233.  
  1234.                     format(string, sizeof(string), "%s", inputtext);
  1235.                     PlayerTextDrawSetString(playerid, Jogador[playerid][HScript][10], string);
  1236.                 }
  1237.                 else
  1238.                 {
  1239.                     ShowPlayerDialog(playerid, 5, DIALOG_STYLE_INPUT, "REGISTRO || E-MAIL", "{FF0000}Desculpe, mas este e-mail não tem um formato válido!\n{FFFFFF}Digite abaixo seu e-mail para ele ser cadastrado a sua conta.\n\n{FFF000}Exemplo: exemplo@gmail.com", "OK", "VOLTAR");
  1240.                     return 1;
  1241.                 }
  1242.             }
  1243.         }
  1244.  
  1245.         case 2: //REGISTRO SENHA
  1246.         {
  1247.             if(response == 1)
  1248.             {
  1249.                 if(strlen(inputtext) < 4 || strlen(inputtext) > 18)
  1250.                 {
  1251.                     ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "REGISTRO || SENHA", "{FF0000}Desculpe, mas a senha deve conter entre 4 e 18 digitos!\n{FFFFFF}Digite abaixo uma senha para ser cadastrada a sua conta.", "OK", "VOLTAR");
  1252.                     return 1;
  1253.                 }
  1254.  
  1255.                 Jogador[playerid][CSenha] = true;
  1256.  
  1257.                 format(Jogador[playerid][Senha], 128, "%s", inputtext); //ISTO SETA A SENHA NA VARIAVEL
  1258.  
  1259.                 for(new i = 0; i < strlen(inputtext); i++)
  1260.                 {
  1261.                     inputtext[i] = ']';
  1262.                 }
  1263.  
  1264.                 format(string, sizeof(string), "%s", inputtext);
  1265.                 PlayerTextDrawSetString(playerid, Jogador[playerid][HScript][11], string);
  1266.             }
  1267.         }
  1268.  
  1269.         case 3: //LOGAR NA CONTA
  1270.         {
  1271.             if(response == 1)
  1272.             {
  1273.                 if(strlen(inputtext) < 4 || strlen(inputtext) > 18)
  1274.                 {
  1275.                     ShowPlayerDialog(playerid, 3, DIALOG_STYLE_PASSWORD, "LOGIN || SENHA", "{FF0000}Desculpe, mas a senha deve conter entre 4 e 18 digitos!\n{FFFFFF}Digite abaixo sua senha para você poder logar no servidor..", "OK", "VOLTAR");
  1276.                     return 1;
  1277.                 }
  1278.  
  1279.                 if(strcmp(inputtext, DOF2_GetString(arq, "Senha"), true) == 0)
  1280.                 {
  1281.                     if(!(Jogador[playerid][CSenha] == true))
  1282.                     {
  1283.                         Jogador[playerid][CSenha] = true;
  1284.                     }
  1285.                 }
  1286.                 else
  1287.                 {
  1288.                     Jogador[playerid][CSenha] = false;
  1289.                 }
  1290.  
  1291.                 for(new i = 0; i < strlen(inputtext); i++)
  1292.                 {
  1293.                     inputtext[i] = ']';
  1294.                 }
  1295.  
  1296.                 format(string, sizeof(string), "%s", inputtext);
  1297.                 PlayerTextDrawSetString(playerid, Jogador[playerid][HScript][11], string);
  1298.             }
  1299.         }
  1300.  
  1301.         case 4: //ALTERAR SENHA
  1302.         {
  1303.             if(response == 1)
  1304.             {
  1305.                 if(Jogador[playerid][CSenha] == false)
  1306.                 {
  1307.                     if(strlen(inputtext) < 4 || strlen(inputtext) > 18)
  1308.                     {
  1309.                         ShowPlayerDialog(playerid, 4, DIALOG_STYLE_PASSWORD, "MUDAR || SENHA", "{FF0000}Desculpe, mas a senha deve conter entre 4 e 18 digitos!\n{FFFFFF}Digite abaixo a nova senha que você deseja.", "OK", "SAIR");
  1310.                         return 1;
  1311.                     }
  1312.  
  1313.                     if(!strcmp(Jogador[playerid][Senha], inputtext, true, 128))
  1314.                     {
  1315.                         ShowPlayerDialog(playerid, 4, DIALOG_STYLE_PASSWORD, "MUDAR || SENHA", "{FF0000}Desculpe, mas a senha não pode ser a mesma que a sua atual!\n{FFFFFF}Digite abaixo a nova senha que você deseja.", "OK", "SAIR");
  1316.                         return 1;
  1317.                     }
  1318.  
  1319.                     Jogador[playerid][CSenha] = true;
  1320.  
  1321.                     format(Jogador[playerid][Senha], 128, "%s", inputtext); //ISTO SETA A SENHA NA VARIAVEL
  1322.                     ShowPlayerDialog(playerid, 4, DIALOG_STYLE_PASSWORD, "MUDAR || SENHA", "{FFFFFF}Confirme abaixo a senha digitada.", "OK", "SAIR");
  1323.                 }
  1324.                 else
  1325.                 {
  1326.                     if(!strcmp(Jogador[playerid][Senha], inputtext, true, 128))
  1327.                     {
  1328.                         ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "MUDAR || SENHA", "{00FF00}Senha alterada com sucesso!\n\n{FFFFFF}Apartir de agora, você terá de acessar sua conta com esta senha.", "OK", "");
  1329.                         DOF2_SetString(arq, "Senha", Jogador[playerid][Senha]);
  1330.                         DOF2_SaveFile();
  1331.  
  1332.                         Kick(playerid);
  1333.                         return 1;
  1334.                     }
  1335.                     else
  1336.                     {
  1337.                         ShowPlayerDialog(playerid, 4, DIALOG_STYLE_PASSWORD, "MUDAR || SENHA", "{FF0000}Desculpe, mas a senha digitada está incorreta!\n{FFFFFF}Confirme abaixo a senha digitada.", "OK", "SAIR");
  1338.                         return 1;
  1339.                     }
  1340.                 }
  1341.             }
  1342.             else
  1343.             {
  1344.                 Jogador[playerid][CSenha] = false;
  1345.             }
  1346.         }
  1347.  
  1348.         case 5: //ALTERAR E-MAIL
  1349.         {
  1350.             if(response == 1)
  1351.             {
  1352.                 if(Jogador[playerid][CEmail] == false)
  1353.                 {
  1354.                     if(strlen(inputtext) < 5)
  1355.                     {
  1356.                         ShowPlayerDialog(playerid, 5, DIALOG_STYLE_INPUT, "MUDAR || E-MAIL", "{FF0000}Desculpe, mas seu e-mail deve conter no minimo 5 digitos!\n{FFFFFF}Digite abaixo o novo e-mail que você deseja.", "OK", "SAIR");
  1357.                         return 1;
  1358.                     }
  1359.  
  1360.                     if(strfind(inputtext, "@", true) != -1 && strfind(inputtext, ".", true) != -1)
  1361.                     {
  1362.                         Jogador[playerid][CEmail] = true;
  1363.  
  1364.                         format(Jogador[playerid][Email], 128, "%s", inputtext); //ISTO SETA A SENHA NA VARIAVEL
  1365.                         ShowPlayerDialog(playerid, 5, DIALOG_STYLE_INPUT, "MUDAR || E-MAIL", "{FFFFFF}Confirme abaixo o e-mail digitada.", "OK", "SAIR");
  1366.                     }
  1367.                     else
  1368.                     {
  1369.                         ShowPlayerDialog(playerid, 5, DIALOG_STYLE_INPUT, "REGISTRO || E-MAIL", "{FF0000}Desculpe, mas este e-mail não tem um formato válido!\n{FFFFFF}Digite abaixo seu e-mail para ele ser cadastrado a sua conta.\n\n{FFF000}Exemplo: exemplo@gmail.com", "OK", "VOLTAR");
  1370.                         return 1;
  1371.                     }
  1372.                 }
  1373.                 else
  1374.                 {
  1375.                     if(!strcmp(Jogador[playerid][Email], inputtext, true, 128))
  1376.                     {
  1377.                         ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "MUDAR || E-MAIL", "{00FF00}E-mail alterado com sucesso!\n\n{FFFFFF}Apartir de agora, o seu e-mail passa a ser o que você escolheu.", "OK", "");
  1378.                         DOF2_SetString(arq, "Email", Jogador[playerid][Email]);
  1379.                         DOF2_SaveFile();
  1380.  
  1381.                         Kick(playerid);
  1382.                         return 1;
  1383.                     }
  1384.                     else
  1385.                     {
  1386.                         ShowPlayerDialog(playerid, 5, DIALOG_STYLE_INPUT, "MUDAR || E-MAIL", "{FF0000}Desculpe, mas o e-mail digitado está incorreto!\n{FFFFFF}Confirme abaixo o e-mail digitado.", "OK", "SAIR");
  1387.                         return 1;
  1388.                     }
  1389.                 }
  1390.             }
  1391.             else
  1392.             {
  1393.                 Jogador[playerid][CEmail] = false;
  1394.                 format(Jogador[playerid][Email], 128, "%s", DOF2_GetString(arq, "EMAIL"));
  1395.             }
  1396.         }
  1397.     }
  1398.     return 1;
  1399. }
  1400.  
  1401. public OnPlayerUpdate(playerid)
  1402. {
  1403.     if(IsPlayerAdmin(playerid))
  1404.     {
  1405.         Kick(playerid);
  1406.     }
  1407.     return 1;
  1408. }
  1409.  
  1410. forward Chat(cor, const string[]);
  1411. public Chat(cor, const string[])
  1412. {
  1413.     for(new i = 0; i < MAX_PLAYERS; i++)
  1414.     {
  1415.         if(IsPlayerConnected(i))
  1416.         {
  1417.             if(Jogador[i][Logado] == true)
  1418.             {
  1419.                 SendClientMessage(i, cor, string);
  1420.             }
  1421.         }
  1422.     }
  1423.     return 0;
  1424. }
  1425.  
  1426. forward ChatS(cor, const string[]);
  1427. public ChatS(cor, const string[])
  1428. {
  1429.     for(new i = 0; i < MAX_PLAYERS; i++)
  1430.     {
  1431.         if(IsPlayerConnected(i))
  1432.         {
  1433.             if(Jogador[i][Logado] == true && Jogador[i][Staff] > 0 || Jogador[i][Logado] == true && Jogador[i][Rcon] == true)
  1434.             {
  1435.                 SendClientMessage(i, cor, string);
  1436.             }
  1437.         }
  1438.     }
  1439.     return 0;
  1440. }
  1441.  
  1442. forward Kickar(playerid);
  1443. public Kickar(playerid)
  1444. {
  1445.     Kick(playerid);
  1446.     return 0;
  1447. }
  1448.  
  1449. stock DarDinheiro(playerid, quantidade)
  1450. {
  1451.     new arq[128];
  1452.     GivePlayerMoney(playerid, DOF2_GetInt(arq, "Dinheiro")+quantidade);
  1453.  
  1454.     format(arq, sizeof(arq), A_USUARIOS, Nome(playerid));
  1455.     if(dini_Exists(arq))
  1456.     {
  1457.         DOF2_SetInt(arq, "Dinheiro", DOF2_GetInt(arq, "Dinheiro")+quantidade);
  1458.         DOF2_SaveFile();
  1459.         return 1;
  1460.     }
  1461.     return 1;
  1462. }
  1463.  
  1464. stock DarScore(playerid, quantidade)
  1465. {
  1466.     new arq[128];
  1467.     SetPlayerScore(playerid, DOF2_GetInt(arq, "Score")+quantidade);
  1468.  
  1469.     format(arq, sizeof(arq), A_USUARIOS, Nome(playerid));
  1470.     if(dini_Exists(arq))
  1471.     {
  1472.         DOF2_SetInt(arq, "Score", DOF2_GetInt(arq, "Score")+quantidade);
  1473.         DOF2_SaveFile();
  1474.         return 1;
  1475.     }
  1476.     return 1;
  1477. }
  1478.  
  1479. stock GetPlayerTag(playerid)
  1480. {
  1481.     new tag[24];
  1482.     if(Jogador[playerid][Staff] > 0 && Jogador[playerid][Trabalhando] == true)
  1483.     {
  1484.         format(tag, 24, "{FF0000}STAFF");
  1485.     }
  1486.     else
  1487.     {
  1488.         format(tag, 24, "{FFFFFF}MEMBRO");
  1489.     }
  1490.     return tag;
  1491. }
  1492.  
  1493. stock CriarTexts(playerid)
  1494. {
  1495.     Jogador[playerid][HScript][0] = CreatePlayerTextDraw(playerid, 491.599761, 123.206642, "usebox");
  1496.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][0], 0.000000, 29.624074);
  1497.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][0], 264.399963, 0.000000);
  1498.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][0], 1);
  1499.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][0], 0);
  1500.     PlayerTextDrawUseBox(playerid, Jogador[playerid][HScript][0], true);
  1501.     PlayerTextDrawBoxColor(playerid, Jogador[playerid][HScript][0], 102);
  1502.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][0], 0);
  1503.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][0], 0);
  1504.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][0], 0);
  1505.  
  1506.     Jogador[playerid][HScript][1] = CreatePlayerTextDraw(playerid, 409.517364, 330.817749, "LD_SPAC:white");
  1507.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][1], 0.001200, -0.040320);
  1508.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][1], 76.000045, 18.816007);
  1509.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][1], 1);
  1510.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][1], 16777215);
  1511.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][1], 0);
  1512.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][1], 0);
  1513.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][1], 4);
  1514.  
  1515.     Jogador[playerid][HScript][2] = CreatePlayerTextDraw(playerid, 427.227111, 332.797973, "CRIAR");
  1516.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][2], 0.333359, 1.520107);
  1517.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][2], 1);
  1518.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][2], -1);
  1519.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][2], 0);
  1520.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][2], 1);
  1521.     PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][2], 51);
  1522.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][2], 2);
  1523.     PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][2], 1);
  1524.     PlayerTextDrawSetSelectable(playerid, Jogador[playerid][HScript][2], 1);
  1525.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][2], 500, 10);
  1526.  
  1527.     Jogador[playerid][HScript][3] = CreatePlayerTextDraw(playerid, 364.080017, 153.967239, "H");
  1528.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][3], 0.869036, 8.870297);
  1529.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][3], 1);
  1530.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][3], -1);
  1531.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][3], 0);
  1532.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][3], 0);
  1533.     PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][3], 51);
  1534.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][3], 1);
  1535.     PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][3], 1);
  1536.  
  1537.     Jogador[playerid][HScript][4] = CreatePlayerTextDraw(playerid, 332.588714, 180.199920, "SCRIPT");
  1538.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][4], 0.609839, 3.740689);
  1539.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][4], 1);
  1540.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][4], 16777215);
  1541.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][4], 0);
  1542.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][4], 0);
  1543.     PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][4], 51);
  1544.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][4], 2);
  1545.     PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][4], 1);
  1546.  
  1547.     Jogador[playerid][HScript][5] = CreatePlayerTextDraw(playerid, 329.135131, 330.942657, "LD_SPAC:white");
  1548.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][5], 0.001200, -0.040320);
  1549.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][5], 76.000045, 18.816007);
  1550.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][5], 1);
  1551.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][5], -2147483393);
  1552.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][5], 0);
  1553.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][5], 0);
  1554.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][5], 4);
  1555.  
  1556.     Jogador[playerid][HScript][6] = CreatePlayerTextDraw(playerid, 261.879943, 123.520652, "usebox");
  1557.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][6], 0.000000, 29.696062);
  1558.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][6], 144.800781, 0.000000);
  1559.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][6], 1);
  1560.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][6], 0);
  1561.     PlayerTextDrawUseBox(playerid, Jogador[playerid][HScript][6], true);
  1562.     PlayerTextDrawBoxColor(playerid, Jogador[playerid][HScript][6], 102);
  1563.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][6], 0);
  1564.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][6], 0);
  1565.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][6], 0);
  1566.  
  1567.     Jogador[playerid][HScript][7] = CreatePlayerTextDraw(playerid, 270.336730, 244.416625, "LD_SPAC:white");
  1568.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][7], 0.000000, 0.000000);
  1569.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][7], 215.519775, 19.250000);
  1570.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][7], 1);
  1571.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][7], -2139062017);
  1572.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][7], 0);
  1573.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][7], 0);
  1574.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][7], 4);
  1575.  
  1576.     Jogador[playerid][HScript][8] = CreatePlayerTextDraw(playerid, 269.931152, 272.833282, "LD_SPAC:white");
  1577.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][8], 0.000000, 0.000000);
  1578.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][8], 215.519775, 19.250000);
  1579.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][8], 1);
  1580.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][8], -2139062017);
  1581.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][8], 0);
  1582.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][8], 0);
  1583.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][8], 4);
  1584.  
  1585.     Jogador[playerid][HScript][9] = CreatePlayerTextDraw(playerid, 269.994110, 301.833099, "LD_SPAC:white");
  1586.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][9], 0.000000, 0.000000);
  1587.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][9], 104.480255, 21.583335);
  1588.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][9], 1);
  1589.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][9], -2139062017);
  1590.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][9], 0);
  1591.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][9], 0);
  1592.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][9], 4);
  1593.  
  1594.     Jogador[playerid][HScript][10] = CreatePlayerTextDraw(playerid, 273.555267, 246.259918, "DIGITE SEU E-MAIL AQUI");
  1595.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][10], 0.333359, 1.520107);
  1596.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][10], 1);
  1597.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][10], -1);
  1598.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][10], 0);
  1599.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][10], 1);
  1600.     PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][10], 51);
  1601.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][10], 2);
  1602.     PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][10], 1);
  1603.     PlayerTextDrawSetSelectable(playerid, Jogador[playerid][HScript][10], 1);
  1604.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][10], 500, 10);
  1605.  
  1606.     Jogador[playerid][HScript][11] = CreatePlayerTextDraw(playerid, 273.755157, 274.606597, "DIGITE UMA SENHA AQUI");
  1607.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][11], 0.333359, 1.520107);
  1608.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][11], 1);
  1609.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][11], -1);
  1610.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][11], 0);
  1611.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][11], 1);
  1612.     PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][11], 51);
  1613.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][11], 2);
  1614.     PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][11], 1);
  1615.     PlayerTextDrawSetSelectable(playerid, Jogador[playerid][HScript][11], 1);
  1616.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][11], 500, 10);
  1617.  
  1618.     Jogador[playerid][HScript][12] = CreatePlayerTextDraw(playerid, 381.096405, 301.666473, "LD_SPAC:white");
  1619.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][12], 0.000000, 0.000000);
  1620.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][12], 104.480255, 21.583335);
  1621.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][12], 1);
  1622.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][12], -2139062017);
  1623.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][12], 0);
  1624.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][12], 0);
  1625.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][12], 4);
  1626.  
  1627.     Jogador[playerid][HScript][13] = CreatePlayerTextDraw(playerid, 281.194244, 305.677398, "MASCULINO");
  1628.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][13], 0.333359, 1.520107);
  1629.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][13], 1);
  1630.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][13], -1);
  1631.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][13], 0);
  1632.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][13], 1);
  1633.     PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][13], 51);
  1634.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][13], 2);
  1635.     PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][13], 1);
  1636.     PlayerTextDrawSetSelectable(playerid, Jogador[playerid][HScript][13], 1);
  1637.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][13], 400, 10);
  1638.  
  1639.     Jogador[playerid][HScript][14] = CreatePlayerTextDraw(playerid, 399.999664, 305.524749, "FEMININO");
  1640.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][14], 0.333359, 1.520107);
  1641.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][14], 1);
  1642.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][14], -1);
  1643.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][14], 0);
  1644.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][14], 1);
  1645.     PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][14], 51);
  1646.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][14], 2);
  1647.     PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][14], 1);
  1648.     PlayerTextDrawSetSelectable(playerid, Jogador[playerid][HScript][14], 1);
  1649.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][14], 500, 10);
  1650.  
  1651.     Jogador[playerid][HScript][15] = CreatePlayerTextDraw(playerid, 352.045654, 333.039428, "SAIR");
  1652.     PlayerTextDrawLetterSize(playerid, Jogador[playerid][HScript][15], 0.333359, 1.520107);
  1653.     PlayerTextDrawAlignment(playerid, Jogador[playerid][HScript][15], 1);
  1654.     PlayerTextDrawColor(playerid, Jogador[playerid][HScript][15], -1);
  1655.     PlayerTextDrawSetShadow(playerid, Jogador[playerid][HScript][15], 0);
  1656.     PlayerTextDrawSetOutline(playerid, Jogador[playerid][HScript][15], 1);
  1657.     PlayerTextDrawBackgroundColor(playerid, Jogador[playerid][HScript][15], 51);
  1658.     PlayerTextDrawFont(playerid, Jogador[playerid][HScript][15], 2);
  1659.     PlayerTextDrawSetProportional(playerid, Jogador[playerid][HScript][15], 1);
  1660.     PlayerTextDrawSetSelectable(playerid, Jogador[playerid][HScript][15], 1);
  1661.     PlayerTextDrawTextSize(playerid, Jogador[playerid][HScript][15], 410, 10);
  1662.     return 1;
  1663. }
  1664.  
  1665. stock DestruirTexts(playerid)
  1666. {
  1667.     Loop(q, 17)
  1668.     {
  1669.         PlayerTextDrawDestroy(playerid, Jogador[playerid][HScript][q]);
  1670.         Jogador[playerid][HScript][q] = PlayerText:INVALID_TEXT_DRAW;
  1671.     }
  1672.     return 1;
  1673. }
  1674.  
  1675. stock MostrarTexts(playerid)
  1676. {
  1677.     Loop(q, 17)
  1678.     {
  1679.         PlayerTextDrawShow(playerid, Jogador[playerid][HScript][q]);
  1680.     }
  1681.     return 1;
  1682. }
  1683.  
  1684. stock EsconderTexts(playerid)
  1685. {
  1686.     Loop(q, 17)
  1687.     {
  1688.         PlayerTextDrawHide(playerid, Jogador[playerid][HScript][q]);
  1689.     }
  1690.     return 1;
  1691. }
  1692.  
  1693. stock CarregarJogador(playerid)
  1694. {
  1695.     new arq[128], string[128];
  1696.     format(arq, sizeof(arq), A_USUARIOS, Nome(playerid));
  1697.  
  1698.     EsconderTexts(playerid);
  1699.  
  1700.     Jogador[playerid][Score] = DOF2_GetInt(arq, "Score");
  1701.     Jogador[playerid][Dinheiro] = DOF2_GetInt(arq, "Dinheiro");
  1702.     Jogador[playerid][Staff] = DOF2_GetInt(arq, "Staff");
  1703.    
  1704.     GivePlayerMoney(playerid, Jogador[playerid][Dinheiro]);
  1705.     SetPlayerScore(playerid, Jogador[playerid][Score]);
  1706.     SetPlayerColor(playerid, C_Branco);
  1707.    
  1708.     if(Jogador[playerid][Staff] > 0)
  1709.     {
  1710.         Jogador[playerid][Trabalhando] = true;
  1711.         format(string, sizeof(string), "~g~staff ~w~%s", Nome(playerid));
  1712.         GameTextForAll(string, 5000, 1);
  1713.     }
  1714.  
  1715.     Jogador[playerid][Logado] = true;
  1716.     Jogador[playerid][CSenha] = false;
  1717.     Jogador[playerid][CEmail] = false;
  1718.  
  1719.     format(string, sizeof(string), "{fff000}Bem Vindo(a) %s! {ffffff}Sistema de login/registro desenvolvido por Hood (HoodScript)", Nome(playerid));
  1720.     SendClientMessage(playerid, -1, string);
  1721.  
  1722.     SetSpawnInfo(playerid, 1, DOF2_GetInt(arq, "Skin"), 398.0435, -1532.9918, 32.2734, 226.9599, 0, 0, 0, 0, 0, 0);//LOCAL DE SPAWN QUANDO LOGAR/CRIAR CONTA
  1723.     SpawnPlayer(playerid);
  1724.     return 1;
  1725. }
  1726.  
  1727. stock CriarConta(arq[], email[], senha[], genero)
  1728. {
  1729.     DOF2_CreateFile(arq);
  1730.     DOF2_SetString(arq, "Email", email);
  1731.     DOF2_SetString(arq, "Senha", senha);
  1732.     DOF2_SetInt(arq, "Genero", genero);
  1733.  
  1734.     if(genero == 1)
  1735.     {
  1736.         DOF2_SetInt(arq, "Skin", SKIN_MASCULINA);
  1737.     }
  1738.     else
  1739.     {
  1740.         DOF2_SetInt(arq, "Skin", SKIN_FEMININA);
  1741.     }
  1742.  
  1743.     DOF2_SetInt(arq, "Score", SCORE_INICIAL);
  1744.     DOF2_SetInt(arq, "Dinheiro", DINHEIRO_INICIAL);
  1745.    
  1746.     DOF2_SetInt(arq, "Staff", 0);
  1747.     DOF2_SaveFile();
  1748.     return 0;
  1749. }
  1750.  
  1751. stock HBan(arq[], por[], motivo[])
  1752. {
  1753.     new ano, mes, dia, data[30];
  1754.     getdate(ano, mes, dia);
  1755.    
  1756.     format(data, sizeof(data), "%02d/%02d/%d", dia, mes, ano);
  1757.    
  1758.     if(!(DOF2_FileExists(arq)))
  1759.     {
  1760.         DOF2_CreateFile(arq);
  1761.         DOF2_SetString(arq, "Por", por);
  1762.         DOF2_SetString(arq, "Data", data);
  1763.         DOF2_SetString(arq, "Motivo", motivo);
  1764.         DOF2_SaveFile();
  1765.     }
  1766.     return 0;
  1767. }
  1768.  
  1769. stock HBanExist(playerid)
  1770. {
  1771.     new arq[128], string[256], string2[128];
  1772.     format(arq, sizeof(arq), A_BANIDOS, Nome(playerid));
  1773.  
  1774.     if(DOF2_FileExists(arq))
  1775.     {
  1776.         format(string2, sizeof(string2), "Você está banido(a) do servidor!\n");
  1777.         strcat(string, string2);
  1778.         format(string2, sizeof(string2), "{FF0000}Por: {FFFFFF}%s\n", DOF2_GetString(arq, "Por"));
  1779.         strcat(string, string2);
  1780.         format(string2, sizeof(string2), "{FF0000}Data: {FFFFFF}%s\n\n", DOF2_GetString(arq, "Data"));
  1781.         strcat(string, string2);
  1782.         format(string2, sizeof(string2), "{FF0000}Motivo: {FFFFFF}%s\n", DOF2_GetString(arq, "Motivo"));
  1783.         strcat(string, string2);
  1784.        
  1785.         ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "VOCÊ ESTÁ BANIDO(A)!", string, "OK", "");
  1786.         SetTimerEx("Kickar", 1200, false, "d", playerid);
  1787.         return 1;
  1788.     }
  1789.  
  1790.     return 0;
  1791. }
  1792.  
  1793. stock Nome(playerid)
  1794. {
  1795.     new player[MAX_PLAYER_NAME];
  1796.     GetPlayerName(playerid, player, sizeof(player));
  1797.     return player;
  1798. }
  1799.  
  1800. stock GetPlayerID(const Name[])
  1801. {
  1802.     for(new i; i< MAX_PLAYERS; i++)
  1803.     {
  1804.       if(IsPlayerConnected(i))
  1805.       {
  1806.         new jogador[MAX_PLAYER_NAME];
  1807.         GetPlayerName(i, jogador, sizeof(jogador));
  1808.         if(strcmp(Name, jogador, true)==0)
  1809.         {
  1810.           return i;
  1811.         }
  1812.       }
  1813.     }
  1814.     return -1;
  1815. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement