Podeajudar aк? -
[BGSL]Manoel Ski - 24.02.2011
Ei gente,tou precisando de uma dica,no meu FS de admin,tem lб ode dar Warn,aviso 3/3,sabe?
entгo,eu dou o warn no player 3 vezes.
Aн ele й kickado na terceira vez.
Mas na hora que ele volta pro server,se eu dou outro aviso,ele jб й kickado de uma vez,entendem?
O que pode ser isso?
Tem jeito de limpar os warnings que eu dei pro player?
Porque ele se volta depois de 3 warnings,se eu dou outro aviso,ele jб й kickado com os 3 warnings dados.
Porque?
Parece que os warnings ficam ''gravados''
Como corrigir isso?
Desde jб obrigado.
Cуdigo:
Код:
if(strcmp(cmd,"/Warn",true) == 0)
if(IsPlayerAdmin(playerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
new str[256];
tmp = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, green, "Uso correto: /Warn [id do player] [motivo]");
return 1;
}
giveplayerid = strval(tmp);
giveplayerid = strval(tmp);
{
if(IsPlayerConnected(giveplayerid))
{
if(WarnedTimes[giveplayerid] == 0)
{
WarnedTimes[giveplayerid]+=1;
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof (sendername));
format(str, sizeof (str), "[BGSL ADM]: %s foi avisado por %s pelo motivo: %s [1/3 Avisos!]", giveplayer, sendername, cmdtext[8]);
SendClientMessageToAll(green, str);
print(str);
return 1;
}
if(WarnedTimes[giveplayerid] == 1)
{
WarnedTimes[giveplayerid]+=1;
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof (sendername));
format(str, sizeof (str), "[BGSL ADM]: %s foi avisado por %s pelo motivo: %s [2/3 Avisos!]", giveplayer, sendername, cmdtext[8]);
SendClientMessageToAll(green, str);
print(str);
return 1;
}
else if(WarnedTimes[giveplayerid] == 2)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof (sendername));
format(str, sizeof (str), "[BGSL ADM]: %s foi kickado por %s pelo motivo: %s [3/3 Avisos!]", giveplayer, sendername, cmdtext[8]);
SendClientMessageToAll(green, str);
Kick(giveplayerid);
return 1;
}
}
}
return 1;
}
Como resolver isso
?
Re: Podeajudar aк? -
deregudegu - 24.02.2011
Poste o codigo que eu jб faзo uma ideia de como arrumar
_____________________
#Edit
Eu acho que vai funcionar...
Mas qualquer coisa avisa
pawn Код:
if(strcmp(cmd,"/Warn",true) == 0)
if(IsPlayerAdmin(playerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
new str[256];
tmp = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, green, "Uso correto: /Warn [id do player] [motivo]");
return 1;
}
giveplayerid = strval(tmp);
giveplayerid = strval(tmp);
{
if(IsPlayerConnected(giveplayerid))
{
if(WarnedTimes[giveplayerid] == 0)
{
WarnedTimes[giveplayerid]+=1;
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof (sendername));
format(str, sizeof (str), "[BGSL ADM]: %s foi avisado por %s pelo motivo: %s [1/3 Avisos!]", giveplayer, sendername, cmdtext[8]);
SendClientMessageToAll(green, str);
print(str);
return 1;
}
if(WarnedTimes[giveplayerid] == 1)
{
WarnedTimes[giveplayerid]+=1;
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof (sendername));
format(str, sizeof (str), "[BGSL ADM]: %s foi avisado por %s pelo motivo: %s [2/3 Avisos!]", giveplayer, sendername, cmdtext[8]);
SendClientMessageToAll(green, str);
print(str);
return 1;
}
else if(WarnedTimes[giveplayerid] == 2)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof (sendername));
format(str, sizeof (str), "[BGSL ADM]: %s foi kickado por %s pelo motivo: %s [3/3 Avisos!]", giveplayer, sendername, cmdtext[8]);
SendClientMessageToAll(green, str);
WarnedTimes[giveplayerid]==0;//quando vocк kickar vai setar as warn em 0
Kick(giveplayerid);
return 1;
}
}
}
return 1;
}
Re: Podeajudar aк? -
[BGSL]Manoel Ski - 24.02.2011
Amigo,este cуdigo nгo funcionou,continua kickando de primeira depois que ele foi avisado 3 vezes quando ele volta pro server
Me ajuda aк por favooor.
O que deve se fazer para limpar as warnings
Re: Podeajudar aк? -
deregudegu - 24.02.2011
Quais sгo as warings?
Re: Podeajudar aк? -
[BGSL]Manoel Ski - 24.02.2011
Como assim?
Re: Podeajudar aк? - rjjj - 24.02.2011
Isto deve resolver o seu problema, dei uma identada e arrumei apenas um operador errado do cуdigo do deregudegu que devia ser o motivo do cуdigo dele nгo ter funcionado.
pawn Код:
if(strcmp(cmd,"/Warn",true) == 0)
{
if(IsPlayerAdmin(playerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
new str[256];
tmp = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, green, "Uso correto: /Warn [id do player] [motivo]");
return 1;
}
giveplayerid = strval(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(WarnedTimes[giveplayerid] == 0)
{
WarnedTimes[giveplayerid]+=1;
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof (sendername));
format(str, sizeof (str), "[BGSL ADM]: %s foi avisado por %s pelo motivo: %s [1/3 Avisos!]", giveplayer, sendername, cmdtext[8]);
SendClientMessageToAll(green, str);
print(str);
return 1;
}
else if(WarnedTimes[giveplayerid] == 1)
{
WarnedTimes[giveplayerid]+=1;
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof (sendername));
format(str, sizeof (str), "[BGSL ADM]: %s foi avisado por %s pelo motivo: %s [2/3 Avisos!]", giveplayer, sendername, cmdtext[8]);
SendClientMessageToAll(green, str);
print(str);
return 1;
}
else if(WarnedTimes[giveplayerid] == 2)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof (sendername));
format(str, sizeof (str), "[BGSL ADM]: %s foi kickado por %s pelo motivo: %s [3/3 Avisos!]", giveplayer, sendername, cmdtext[8]);
SendClientMessageToAll(green, str);
WarnedTimes[giveplayerid] = 0;
Kick(giveplayerid);
return 1;
}
}
}
return 1;
}
Espero ter ajudado
Re: Podeajudar aк? -
[BGSL]Manoel Ski - 24.02.2011
AК,VALEU AН GALERA,FUNCIONOU DIREITINHO AGORA!
MUITO OBRIGADO,QUALQUER DUVIDA PODEM ME PERGUNTAR,N ESQUEЗAM QUE SOU SCRIPTER DO BGSL
FLWS AК,AGUARDO QUALQUER DUVIDA!
Re: Podeajudar aк? -
deregudegu - 24.02.2011
PUTssss...
Sу errei nisso, na proxima presto mais atenзгo
pawn Код:
WarnedTimes[giveplayerid]==0;
//o certo seria
WarnedTimes[giveplayerid] = 0;
Re: Podeajudar aк? -
Macintosh - 24.02.2011
Quote:
Originally Posted by deregudegu
Quais sгo as warings?
|
Nгo й isso. .-. й que tб kickando com 1 sу warning quando ele volta ao server.
Re: Podeajudar aк? -
deregudegu - 24.02.2011
Esse sistemas de aviso a algum player й melhor deixar como BAN e nгo kick, por exemplo:
Quando for a 1Є vez q tomou aviso й kick + aviso
Quando for a 2Є vez da um World Bundures(Acho q й isso --')
E por fim um aviso + ban