Nгo kicka -
Guscooby - 01.12.2018
Olб, eu estou fazendo um sistema de ban e, estou tendo problemas com o kick.
eu defini a DIALOG com as informaзхes do ban tudo corretamente, mas o servidor nгo da o Kick.
eu fiz assim:
pawn Код:
public Jogador_Verificar_Ban(playerid)
{
new Consultar_Mysql[150];
mysql_format(MysqlDb,Consultar_Mysql,150,"SELECT * FROM `banidos` WHERE `Nome` = '%s' OR `IP` = '%s' AND `Banido` = '1'",Nome(playerid),IP(playerid));
mysql_query(MysqlDb,Consultar_Mysql,true);
if(cache_num_rows() == 0)
{
SetTimerEx("Jogador_Verificar_Registro",500,false,"u",playerid);
}else
if(cache_num_rows() >=1)
{
new Informacao_Ban[5][100],Mensagem_Ban[250],Formatar_Mensagem[150];
cache_get_value(0,"Nome",Informacao_Ban[0],100);
cache_get_value(0,"IP",Informacao_Ban[1],100);
cache_get_value(0,"Motivo",Informacao_Ban[2],100);
cache_get_value(0,"Admin",Informacao_Ban[3],100);
cache_get_value(0,"Data",Informacao_Ban[4],100);
strcat(Mensagem_Ban,"\t{FF0000}Vocк estб banido do servidor!\n\n");
format(Formatar_Mensagem,150,"{9932CD}Nick Banido:{871F78} %s\n",Informacao_Ban[0]);
strcat(Mensagem_Ban,Formatar_Mensagem);
format(Formatar_Mensagem,150,"{9932CD}IP:{871F78} %s\n",Informacao_Ban[1]);
strcat(Mensagem_Ban,Formatar_Mensagem);
format(Formatar_Mensagem,150,"{9932CD}Motivo:{871F78} %s\n",Informacao_Ban[2]);
strcat(Mensagem_Ban,Formatar_Mensagem);
format(Formatar_Mensagem,150,"{9932CD}Admin:{871F78} %s\n",Informacao_Ban[3]);
strcat(Mensagem_Ban,Formatar_Mensagem);
format(Formatar_Mensagem,150,"{9932CD}Data:{871F78} %s\n",Informacao_Ban[4]);
strcat(Mensagem_Ban,Formatar_Mensagem);
strcat(Mensagem_Ban,"{9932CD}Duraзгo:{871F78} Permanente.");
ShowPlayerDialog(playerid,DIALOG_BAN,DIALOG_STYLE_MSGBOX,"{FF0000}Banido",Mensagem_Ban,"Fechar","");
SetTimerEx("Kickar",1000,false,"u",playerid);
}
return 1;
}
stock Kickar(playerid)
{
Kick(playerid)
return 1;
}
;
* Coloquei o timer pra mostrar a dialog ;-;.
* jб tentei com forward, mas da na mesma.
* jб pensei em fazer ele clicar no botгo "fechar", mas eu queria que ele fosse kickado ao entrar ;u
Agradeзo /;
Re: Nгo kicka -
FerrariL - 01.12.2018
PHP код:
forward Kickar(playerid);
public Kickar(playerid)
{
Kick(playerid);
return 1;
}
Nгo precisa de usar a KeyWord stock, e vocк deverб usar o forward, pois caso contrбrio nгo irб funcionar.
Re: Nгo kicka -
Guscooby - 01.12.2018
Quote:
Originally Posted by FerrariL
PHP код:
forward Kickar(playerid);
public Kickar(playerid)
{
Kick(playerid);
return 1;
}
Nгo precisa de usar a KeyWord stock, e vocк deverб usar o forward, pois caso contrбrio nгo irб funcionar.
|
Agradeзo a resposta, mas como eu respondi, nгo funciona com stock nem com forward ;v
Re: Nгo kicka -
FerrariL - 01.12.2018
Quote:
Originally Posted by Guscooby
Agradeзo a resposta, mas como eu respondi, nгo funciona com stock nem com forward ;v
|
O problema estб na sua funзгo Kickar, vocк estб fazendo uma funзгo recursiva. Resumindo vocк esqueceu de colocar a funзгo:
Re: Nгo kicka -
Guscooby - 01.12.2018
Quote:
Originally Posted by FerrariL
O problema estб na sua funзгo Kickar, vocк estб fazendo uma funзгo recursiva. Resumindo vocк esqueceu de colocar a funзгo:
|
Sem usar o timer a dialog nгo й mostrada.
Re: Nгo kicka -
FerrariL - 01.12.2018
Quote:
Originally Posted by Guscooby
Sem usar o timer a dialog nгo й mostrada.
|
Use o cуdigo que lhe passei e veja se estб resolvido.
Re: Nгo kicka -
Guscooby - 01.12.2018
Quote:
Originally Posted by FerrariL
Olhei aqui e vocк estб usando o placeholder errado, use desta forma:
PHP код:
SetTimerEx("Kickar",1000,false,"d",playerid);
|
pawn Код:
d й para nъmeros inteiros.
u й para IDs
mesmo fazendo do modo que vocк falou o erro continua.
Re: Nгo kicka -
FerrariL - 01.12.2018
Quote:
Originally Posted by Guscooby
pawn Код:
d й para nъmeros inteiros. u й para IDs
mesmo fazendo do modo que vocк falou o erro continua.
|
https://sampwiki.blast.hk/wiki/SetTimerEx Veja sobre os placeholders.
A respeito do Bug, coloque o print na funзгo Kickar e veja se ela estб sendo chamada.
Obs: Vocк deve estar usando o forward/public.
Re: Nгo kicka -
Guscooby - 01.12.2018
Funcionou nгo, mas deixa queto e.e
Re: Nгo kicka -
FerrariL - 01.12.2018
Quote:
Originally Posted by Guscooby
Funcionou nгo, mas deixa queto e.e
|
Eu testei aqui e funcionou, o problema estб no seu cуdigo de verificaзгo do ban anбlise-o.
Re: Nгo kicka -
SKull7 - 02.12.2018
Eu tive este mesmo problema a algum tempo atrбs,a ъnica maneira funcional que consegui resolver isso foi usando uma include chamada "KickBan".Link:
https://pastebin.com/n17arqqf