[Ajuda]bans -
keller012 - 25.05.2010
eu uso o seguinte comando para banir?
Код:
if(strcmp(cmd, "/ban", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /ban [ID/ParteDoNome] [razгo]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (PlayerInfo[playerid][pAdmin] >= 3)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /ban [ID/ParteDoNome] [razгo]");
return 1;
}
new year, month,day;
getdate(year, month, day);
format(string, sizeof(string), "AdmCmd: %s foi banido por %s, Razгo: %s (%d-%d-%d)", giveplayer, sendername, (result),month,day,year);
BanLog(string);
format(string, sizeof(string), "AdmCmd: %s foi banido por %s, Razгo: %s", giveplayer, sendername, (result));
SendClientMessageToAll(COLOR_LIGHTRED, string);
PlayerInfo[giveplayerid][pLocked] = 1;
Ban(giveplayerid);
return 1;
}
}//not connected
}
else
{
format(string, sizeof(string), " %d nгo й um player ativo.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}
so que nao esta banindo.
o player esta voltando em seguida com a mesma conta...
nao esta banindo, deve estar apenas kikando.
alguem pode me ajudar??
Re: [Ajuda]bans -
PawninG - 25.05.2010
Tente:
Код:
if(strcmp(cmd, "/ban", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /ban [ID/ParteDoNome] [razгo]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (PlayerInfo[playerid][pAdmin] >= 3)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /ban [ID/ParteDoNome] [razгo]");
return 1;
}
new year, month,day;
getdate(year, month, day);
format(string, sizeof(string), "AdmCmd: %s foi banido por %s, Razгo: %s (%d-%d-%d)", giveplayer, sendername, (result),month,day,year);
BanLog(string);
format(string, sizeof(string), "AdmCmd: %s foi banido por %s, Razгo: %s", giveplayer, sendername, (result));
SendClientMessageToAll(COLOR_LIGHTRED, string);
PlayerInfo[giveplayerid][pLocked] = 1;
PlayerInfo[giveplayerid][pBan] = 1;
Ban(giveplayerid);
return 1;
}
}//not connected
}
else
{
format(string, sizeof(string), " %d nгo й um player ativo.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}
Re: [Ajuda]bans -
ipsBruno - 25.05.2010
Isso Ocorre normamente quando o valor da string for maior de 128 , entгo acaba nao ocorrendo todos funзхes corretamente
Tenta:
(valor maximo 128
Re: [Ajuda]bans -
keller012 - 25.05.2010
nao й a string
deve ser o jeito do comando mesmo..
se alguem puder fazer o favor de me mandar o comando
completo eu agradeceria, pq eu nao sei o motivo de nao estar banindo...
Re: [Ajuda]bans -
zSuYaNw - 26.05.2010
Bota isso :
Re: [Ajuda]bans -
TiagoPS - 26.05.2010
Код:
if(strcmp(cmd, "/ban", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /ban [ id ] [reason]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /ban [ id ] [reason]");
return 1;
}
new year, month,day;
getdate(year, month, day);
format(string, sizeof(string), "AdmCmd> %s foi banido por %s, Motivo: %s (%d-%d-%d)", giveplayer, sendername, (result),month,day,year);
BanLog(string);
format(string, sizeof(string), "AdmCmd --> %s foi banido por %s, Motivo: %s", giveplayer, sendername, (result));
SendClientMessageToAll(COLOR_LIGHTRED, string);
PlayerInfo[giveplayerid][pAdmin] = PlayerInfo[giveplayerid][pNivel];
PlayerInfo[giveplayerid][pNivel] = -999;
Ban(giveplayerid);
return 1;
}
}
}
Peguei do GM do Caio_Cartaxo
Re: [Ajuda]bans -
zSuYaNw - 26.05.2010
Devia Pedir no Tуpico do GM do Caio_Cartaxo.
Re: [Ajuda]bans -
SlashPT - 26.05.2010
tenta mas eu nem testei
pawn Код:
if(strcmp(cmd, "/ban", true) == 0)
{
new tmp2[256];
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /ban [ID] [razгo]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (PlayerInfo[playerid][pAdmin] >= 3)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new year, month,day;
getdate(year, month, day);
format(string, sizeof(string), "AdmCmd: %s foi banido por %s, Razгo: %s (%d-%d-%d)", giveplayer, sendername, tmp2,month,day,year);
BanLog(string);
format(string, sizeof(string), "AdmCmd: %s foi banido por %s, Razгo: %s", giveplayer, sendername, tmp2);
SendClientMessageToAll(COLOR_LIGHTRED, string);
PlayerInfo[giveplayerid][pLocked] = 1;
Ban(giveplayerid);
return 1;
}
}//not connected
else
{
format(string, sizeof(string), " %d nгo й um player ativo.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
}
return 1;
}
Re: [Ajuda]bans -
keller012 - 27.05.2010
muito obrigado a todos
pincipalmente ao dark
usei esse seu e deu certo
grande abraзo
Re: [Ajuda]bans -
juniorjg - 27.05.2010
Boom eu estou com o mesmo problema so que uso outro adminfs aqui esta o comandos alguem poderia me ajudar
pawn Код:
if(strcmp(cmd, "/ban", true) == 0)
{
new reason[128];
if (AccountInfo[playerid][AdminLevel] >= 2 || IsPlayerAdmin(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, ORANGE, "USOU: /ban [playerid] [motivo]");
SendClientMessage(playerid, ORANGE, "Vai banir o jogador especificado.");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (AccountInfo[giveplayerid][AdminLevel] > AccountInfo[playerid][AdminLevel])
{
format(string, sizeof(string), "-| [%i]%s tentou banir vocк |-",playerid,player);
SendClientMessage(giveplayerid, ADMIN_RED,string);
SendClientMessage(playerid, ADMIN_RED, "Vocк nгo tem permissгo para banir um administrador com um nнvel mais elevado do que vocк!");
}
else if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
while ((idx < length) && ((idx - offset) < (sizeof(reason) - 1)))
{
reason[idx - offset] = cmdtext[idx];
idx++;
}
reason[idx - offset] = EOS;
if(!strlen(reason))
{
SendClientMessage(playerid, ORANGE, "USOU: /ban [playerid] [motivo]");
return 1;
}
else
{
new sstring[256];
new ip[128];
format(string, sizeof(string), "-|O Administrador %s baniu %s. Motivo: %s |-", sendername,giveplayer,reason);
SendClientMessageToAll(Vermelho, string);
GetPlayerIp(giveplayerid,ip,128);
format(sstring, sizeof(sstring), "-| Jogador foi banido Ip: %s |-", ip);
SendClientMessageToAdmins(Vermelho, sstring,1);
AccountInfo[giveplayerid][AdminLevel] = 0;
BanEx(giveplayerid,reason);
}
}
else if(giveplayerid == INVALID_PLAYER_ID)
{
format(string, sizeof(string), "%d nгo й um jogador ativo.", giveplayerid);
SendClientMessage(playerid, RED, string);
}
}
else
{
SendClientMessage(playerid, RED, "Vocк nгo й um administrador com o nнvel exigido.");
}
return 1;
}