BR_Gustavo

Bloquear Comandos

Jan 14th, 2019
193
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. public OnPlayerCommandReceived(playerid, cmdtext[])
  2. {
  3.     new Consultar[150],Outro[150];
  4.     format(Outro,150,"%s",cmdtext);
  5.     new Inicio = 0;
  6.     Inicio = strfind(cmdtext," ",false);
  7.     if(Inicio >=1)
  8.     {
  9.         strdel(Outro,Inicio,strlen(Outro)+1);
  10.     }
  11.     mysql_format(mysql,Consultar,150,"SELECT * FROM `permicoes` WHERE `Nome` = '%s' AND `Permicao` = '%s'",pName(playerid),Outro);
  12.     mysql_query(mysql,Consultar,true);
  13.     if(cache_num_rows() >=1)
  14.     {
  15.         new Informacoes_Permicao[4][100],Msg_Informacao[350];
  16.         cache_get_field_content(0,"Nome",Informacoes_Permicao[0],mysql,100);
  17.         cache_get_field_content(0,"Admin",Informacoes_Permicao[1],mysql,100);
  18.         cache_get_field_content(0,"Data",Informacoes_Permicao[2],mysql,100);
  19.         cache_get_field_content(0,"Complemento",Informacoes_Permicao[3],100);
  20.         format(Msg_Informacao,200,"{00FF00}%s,{FF0000} o administrador \"%s\" removeu o seu acesso a esse comando\n{FF0000}Data: %s Motivo: %s",Informacoes_Permicao[0],Informacoes_Permicao[1],Informacoes_Permicao[2],Informacoes_Permicao[3]);
  21.         ShowPlayerDialog(playerid,0,DIALOG_STYLE_MSGBOX,"{FFFF00}Comando Bloqueado",Msg_Informacao,"{FF0000}Ok","");
  22.         return 1;
  23.     }
  24.     return 0;
  25. }
  26. //------------------------------------------------------------------------------
  27. CMD:bloquearcmd(playerid,params[])
  28. {
  29.     if(IsPlayerAdmin(playerid))
  30.     {
  31.         new Jogador[50],Comando[50],Complemento[100],Consulta[150],Inserir_Sql[350],Tempo[6];
  32.         if(sscanf(params,"s[50]s[50]s[100]",Jogador,Comando,Complemento))return SendClientMessage(playerid,red,"USE: /BloquearCmd [Jogador-Nome] [Comando] [Complemento - (Motivo/Descrição)]");
  33.         mysql_format(mysql,Consulta,150,"SELECT * FROM `ip` WHERE `Nome` = '%s'",Jogador); // mude pra tabela "ip" ;v
  34.         mysql_query(mysql,Consulta,true);
  35.         if(cache_num_rows() == 0)
  36.         {
  37.             SendClientMessage(playerid,red,"ERRO: Não existe nenhuma conta com esse nick!");
  38.         }else
  39.         if(cache_num_rows() >=1)
  40.         {
  41.             cache_get_field_content(0,"Nome",Jogador,mysql,50);
  42.         }
  43.         if(Comando[0] != '/')
  44.         {
  45.             strins(Comando,"/",0,sizeof(Comando));
  46.  
  47.         }
  48.         getdate(Tempo[2],Tempo[1],Tempo[0]);
  49.         gettime(Tempo[3],Tempo[4],Tempo[5]);
  50.         mysql_format(mysql,Inserir_Sql,350,"INSERT INTO permicoes (Nome,Admin,Permicao,Data,Complemento) VALUES ('%s','%s','%s','%d/%d/%d-%d:%d','%s')",Jogador,pName(playerid),Comando,Tempo[0],Tempo[1],Tempo[2],Tempo[3],Tempo[4],Tempo[5],Complemento);
  51.         mysql_query(mysql,Inserir_Sql,false);
  52.         SendClientMessage(playerid,COLOR_GREEN,"Comando proibido! Esse jogador não vai poder mais executar esse comando!");
  53.     }else
  54.     {
  55.         SendClientMessage(playerid,red,"ERRO: Você não tem nivel suficiente para executar esse comando!");
  56.     }
  57.     return 1;
  58. }
  59. //------------------------------------------------------------------------------
  60. CMD:desbloquearcmd(playerid,params[])
  61. {
  62.     if(IsPlayerAdmin(playerid))
  63.     {
  64.         new Jogador[50],Comando[50],Consultar[150];
  65.         if(sscanf(params,"s[50]s[50]",Jogador,Comando))return SendClientMessage(playerid,red,"USE: /DesbloquearCmd [Jogador-Nome] [Comando-Bloqueado]");
  66.         if(Comando[0] != '/')
  67.         {
  68.             strins(Comando,"/",0,sizeof(Comando));
  69.  
  70.         }
  71.         mysql_format(mysql,Consultar,150,"SELECT * FROM `permicoes` WHERE `Nome` = '%s' AND `Permicao` = '%s'",Jogador,Comando);
  72.         mysql_query(mysql,Consultar,true);
  73.         if(cache_num_rows() >=0)
  74.         {
  75.             SendClientMessage(playerid,red,"ERRO: Esse comando não está bloqueado ou essa conta não existe.");
  76.         }else
  77.         if(cache_num_rows() >=1)
  78.         {
  79.             mysql_format(mysql,Consultar,150,"DELETE FROM `permicoes` WHERE `Nome` = '%s' AND `Permicao` = '%s'",Jogador,Comando);
  80.             mysql_query(mysql,Consultar,true);
  81.             SendClientMessage(playerid,COLOR_GREEN,"Comando desbloqueado");
  82.         }
  83.     }else
  84.     {
  85.         SendClientMessage(playerid,red,"ERRO: Você não tem nivel suficiente para executar esse comando!");
  86.     }
  87.     return 1;
  88. }
  89. //------------------------------------------------------------------------------
RAW Paste Data