22.03.2014, 15:57
You will need to save/load their ip in a string. If you're using Y_INI it should be like this.
In your enum.
OnPlayerDisconnect.
Loading.
In your enum.
pawn Код:
BannedIP[22]
pawn Код:
INI_WriteString(File, "BannedIP", PlayerInfo[playerid][BannedIP]);
pawn Код:
INI_String("BannedIP", PlayerInfo[playerid][BannedIP], 22);
pawn Код:
CMD:unban(playerid, params[])
{
new tname[24];
if(sscanf(params, "s[24]", tname)) return SendClientMessage(playerid,-1,"Correct [Usage:] /unban [playerName] ");
new filestring[79];
format(filestring, sizeof(filestring), "/users/%s.ini", tname);
if(!fexist(filestring)) return SendClientMessage(playerid, COLOR_LIGHTRED, "That player does not exist.");
else
{
new INI:File = INI_Open(filestring);
INI_SetTag(File, "data");
INI_WriteInt(File, "Banned",0);
INI_Close(File);
INI_ParseFile(filestring, "LoadIP_%s", .bExtra = true , .extra = playerid);
new cmdstring[44];
format(cmdstring, sizeof(cmdstring), "unbanip %s", PlayerInfo[playerid][BannedIP]);
SendRconCommand(cmdstring);
SendRconCommand("reloadbans");
new done[128];
format(done, sizeof(done),"AdmCmd: You have successfully unbanned %s.", tname);
SendClientMessage(playerid, -1, done);
}
return 1;
}