15.05.2010, 16:06
Hello I am having problems with my auto login.
This is my script, OnPlayerConnect
OnPlayerDisconnect
Anyone can help? Thanks.
This is my script, OnPlayerConnect
Код:
new ip[16];
GetPlayerIp(playerid,ip,16);
if(IsPlayerRegistered(Name(playerid)) == 1 && IsLogged[playerid] == 1)
{
new strq[512];
format(strq, sizeof(strq), "SELECT `IP`,`Money`,`Admin Level`,`VIP`,`Kills`,`Deaths` FROM `users` WHERE `Username` = '%s'", Name(playerid));
query(strq);
mysql_store_result();
mysql_fetch_row_format(line, "|");
FIP = strtokm(line, index, '|');
if(!strcmp(ip,FIP,true))
{
SendClientMessage(playerid, ORANGE, "Server: Your login session has been continued!");
lMoney = strval(strtokm(line, index, '|'));
PlayerInfo[playerid][Admin] = strval(strtokm(line, index, '|'));
PlayerInfo[playerid][VIP] = strval(strtokm(line, index, '|'));
PlayerInfo[playerid][Kills] = strval(strtokm(line, index, '|'));
PlayerInfo[playerid][Deaths] = strval(strtokm(line, index, '|'));
GivePlayerMoney(playerid,lMoney+GetPlayerMoney(playerid));
mysql_free_result();
}
else
{
SendClientMessage(playerid, ORANGE, "Welcome to Team-Wars, to login to your account use /login [password]");
IsLogged[playerid] = 0;
}
if(PlayerInfo[playerid][VIP] == 1)
{
format(string, sizeof(string), "Server: VIP %s has logged in!", Name(playerid));
SendClientMessageToAll(ORANGE, string);
}
}
else
{
format(string,sizeof(string),"Welcome to Team-Wars, %s. To login to your account type /login [password].",Name(playerid));
IsLogged[playerid] = 0;
PlayerInfo[playerid][Admin] = 0;
PlayerInfo[playerid][VIP] = 0;
PlayerInfo[playerid][Kills] = 0;
PlayerInfo[playerid][Kills] = 0;
}
Код:
public OnPlayerDisconnect(playerid, reason)
{
new ip[256];
GetPlayerIp(playerid, ip, sizeof(ip));
if(IsRegistered[playerid] == 1 && IsLogged[playerid] == 1)
{
new sqlquery[1052];
format(sqlquery, sizeof(sqlquery), "UPDATE `users` SET `IP` = '%s',`Money` = '%d',`Admin Level` = '%d',`VIP` = '%d',`Kills` = '%d',`Deaths` = '%d' WHERE `Username` = '%s' LIMIT 1 ;",
ip,GetPlayerMoney(playerid),PlayerInfo[playerid][Admin],PlayerInfo[playerid][VIP],PlayerInfo[playerid][Kills],PlayerInfo[playerid][Deaths],Name(playerid));
if(!query(sqlquery)) printf("[ERROR]: Cannot save account data for user: %s (id:%d).",Name(playerid), GetPlayerIDFromName(Name(playerid)));
}
IsRegistered[playerid] = 0;
IsLogged[playerid] = 0;
PlayerInfo[playerid][Admin] = 0;
PlayerInfo[playerid][VIP] = 0;
PlayerInfo[playerid][Kills] = 0;
PlayerInfo[playerid][Kills] = 0;
return 1;
}


. -> 17