[Ajuda]Sscanf e string. -
Sergio_MOW - 26.08.2011
Boa noite novamente, observei um sistema em dini, um blacklist, mas nгo sei passar ele para sscanf, pois ele nгo utiliza id do player, e sim nome, e nao sei mexer direito com strings no sscanf, poderiam me ajudar
pawn Код:
if(strcmp(cmd,"/listanegra",true)==0)
{
if(PlayerInfo[playerid][pAdmin] >= 1)//bani
{
new file[300];
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,COLOR_GRAD1,"USE: /listanegra [Nick]");
return 1;
}
format(file, sizeof(file), "/listaN/%s.ini", tmp);
if(!fexist(file))
{
dini_Create(file);
Kick(tmp);
SendClientMessage(playerid,COLOR_GRAD1,"Jogador banido com sucesso");
}
else
{
SendClientMessage(playerid,COLOR_GRAD1,"Este nick ja esta em nossa lista negra!!!");
}
}
return 1;
}
if(strcmp(cmd,"/tirardalistaN",true)==0)//desbani
{
if(PlayerInfo[playerid][pAdmin] >= 1337)
{
new file[300];
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,COLOR_GRAD1,"USE: /tirardalistaN [Nick]");
return 1;
}
format(file, sizeof(file), "/listaN/%s.ini", tmp);
if(dini_Exists(file))
{
dini_Remove(file);
SendClientMessage(playerid,COLOR_GRAD1,"Retirado da lista negra com sucesso!!!");
}
else
{
SendClientMessage(playerid,COLOR_GRAD1,"Esta conta nгo Esta na lista negra!!!");
}
}
return 1;
}
Re: [Ajuda]Sscanf e string. -
TiagoPS - 26.08.2011
Tente, ssу fiz um o outro vc consegue
pawn Код:
CMD:listanegra(playerid,params[])
{
if(PlayerInfo[playerid][pAdmin] >= 1)//bani
{
if(sscanf(params, "s<MAX_PLAYER_NAME>", params[0]))
return SendClientMessage(playerid,COLOR_GRAD1,"USE: /listanegra [Nick]");
new file[60];
format(file, sizeof(file), "/listaN/%s.ini", params[0]);
if(fexist(file))
{
return SendClientMessage(playerid,COLOR_GRAD1,"Este nick ja esta em nossa lista negra!!!");
}
else
{
dini_Create(file);
Kick(params[0]);
SendClientMessage(playerid,COLOR_GRAD1,"Jogador banido com sucesso");
return true;
}
}
return true;
}
se n der o paramtreo s troque por u somente mas acho q funcionara assim
Re: [Ajuda]Sscanf e string. -
Sergio_MOW - 26.08.2011
No caso ele banirб tambem players OFF, certo?
Re: [Ajuda]Sscanf e string. -
TiagoPS - 26.08.2011
й pra ser
----------------------------------------------------------------------------------------------------------------
[S]trong's Version
pawn Код:
CMD:listanegra(playerid,params[])
{
if(PlayerInfo[playerid][pAdmin] >= 1)//bani
{
if(!params) return SendClientMessage(playerid,COLOR_GRAD1,"USE: /listanegra [Nick]");
new
file[60],
Nam[21];
format(file, sizeof(file), "/listaN/%s.ini", params[0]);
if(fexist(file)) return SendClientMessage(playerid,COLOR_GRAD1,"Este nick ja esta em nossa lista negra!!!");
for(new x = 0,sz = GetMaxPlayers(); x != sz; x++)
{
if(IsPlayerConnected(x))
{
GetPlayerName(x,Nam,sizeof(Nam));
if(strcmp(params,Nam,false) == 0)
{
Ban(x);
break;
}
}
}
dini_Create(file);
SendClientMessage(playerid,COLOR_GRAD1,"Jogador banido com sucesso");
return true;
}
return true;
}
Re: [Ajuda]Sscanf e string. -
Sergio_MOW - 26.08.2011
Uai, o do strong atй me embolei kk, quando eu for mais expert no Pawn eu uso o codigo dele kk, mas msm assim, thankz strong.
EDIT: Fiz o desban:
ta certo
pawn Код:
cmd(tirarlista,playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >= 1)//bani
{
if(sscanf(params, "s<MAX_PLAYER_NAME>", params[0]))
return SendClientMessage(playerid,CINZA,"USE: /listanegra [Nick]");
new file[60];
format(file, sizeof(file), "listaN/%s.ini", params[0]);
if(!fexist(file))
{
return SendClientMessage(playerid,CINZA,"Este nick nгo esta em nossa lista negra!!!");
}
else
{
new gayban[MAX_PLAYERS],string[128];
GetPlayerName(params[0], gayban, sizeof(gayban));
format(string, sizeof(string),"O administrador %s tirou o player %s a lista negra");
SendClientMessageToAll(ERRO,string);
dini_Remove(file);
SendClientMessage(playerid,CINZA,"Jogador desbanido com sucesso");
return true;
}
}
return true;
}