16.04.2013, 22:22
Galera, eu testei todos os codes e sу resolveu a questгo de acumular de um jogador para o outro...
Quando eu dou avisos em um jogador, ai eu aviso outro diferente, e nгo ta acumulando de um para o outro como estava antes, mas depois de o 1є jogador ser kickado, o proximo jogador a ser aviso fica 0/3 no primeiro aviso 0/3 no segundo...
http://tinypic.com/view.php?pic=vo0vg1&s=6
Quando eu dou avisos em um jogador, ai eu aviso outro diferente, e nгo ta acumulando de um para o outro como estava antes, mas depois de o 1є jogador ser kickado, o proximo jogador a ser aviso fica 0/3 no primeiro aviso 0/3 no segundo...
http://tinypic.com/view.php?pic=vo0vg1&s=6
pawn Код:
if(strcmp(cmd, "/aviso", true) == 0)
{
if(IsPlayerAdmin(playerid) || Adm[playerid] == 1)
{
tmp = strtok(cmdtext, idx);
new id = strval(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, ADMIN_CORRETO, "Uso: /aviso [id] [aviso]");
return 1;
}
MSG = strrest(cmdtext, idx);
if(!strlen(MSG))
{
SendClientMessage(playerid, ADMIN_CORRETO, "Uso: /aviso [id] [aviso]");
return 1;
}
if(!IsPlayerConnected(id))
{
SendClientMessage(playerid, 0xFFFFE0AA, "* Jogador nгo estб conectado!");
return 1;
}
aviso[id]++;
if(aviso[id] == 3)
{
format(string, sizeof(string), "(INFO) Vocк foi por exceder o limite de avisos (Motivo: %s) [%d/3]", MSG, aviso);
SendClientMessage(id, ADMIN_ERROR, string);
Kick(id);
aviso[id] = 0;
}
GetPlayerName(id, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "(Brazilian) O administrador %s avisou o jogador %s (Motivo: %s) Total = [%d/3]", sendername, giveplayer, MSG, aviso);
SendClientMessageToAll(ADMIN_CORRETO, string);
printf("(Brazilian) O administrador %s avisou o jogador %s (Motivo: %s) Total = [%d/3]", sendername, giveplayer, MSG, aviso);
}
else
{
SendClientMessage(playerid, ADMIN_ERROR, "* Vocк nгo tem acesso a esse comando!");
}
return 1;
}