23.06.2012, 07:49
Ты открываешь файл с данными игрока но закрываешь его только если пароль правильный.
pawn Код:
forward OnPlayerLogin(playerid,password[]);
public OnPlayerLogin(playerid,password[])
{
if(IsPlayerConnected(playerid))
{
new string[64];
new pass[16];
new playername[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername, sizeof(playername));
format(string,sizeof(string), "Users/%s.ini", playername);
new iniFile = ini_openFile(string);
ini_getString(iniFile,"Pass",pass,16);
if(strcmp(pass,password,true) == 0)
{
ini_getString(iniFile,"Pass",Player[playerid][pPass],64);
ini_getInteger(iniFile,"Admin Level",Player[playerid][AdminLevel]);
ini_getInteger(iniFile,"VIP",Player[playerid][pVip]);
ini_getInteger(iniFile,"Jailed", Player[playerid][jailed]);
ini_getInteger(iniFile,"Muted", Player[playerid][pMuted]);
ini_getInteger(iniFile, "Money", Player[playerid][pMoney]);
ini_getInteger(iniFile, "Score", Player[playerid][pScore]);
ini_getInteger(iniFile,"Kills", Player[playerid][pKills]);
ini_getInteger(iniFile,"Deaths", Player[playerid][pDeaths]);
ini_getInteger(iniFile,"Bank", Player[playerid][pBank]);
SetPlayerScore(playerid,Player[playerid][pScore]);
}
else
{
SendClientMessage(playerid,COLOR_RED,"Вы были кикнуты с сервера! [Причина: Неверный пароль].");
Kick(playerid);
}
SendClientMessage(playerid,0xFF00000,"Вы успешно авторизованны!");
ini_closeFile(iniFile);
}
return 1;
}