12.01.2014, 13:27
Hello guyz i need help when i enter in game and setlevel then relog with new name the new name auto get level what to How to Fix it
public OnPlayerDisconnect(playerid, reason)
{
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));
INI_WriteInt(File,"Admin",Player[playerid][pAdmin]);
INI_WriteInt(File,"Kills",Player[playerid][pKills]);
INI_WriteInt(File,"Deaths",Player[playerid][pDeaths]);
INI_WriteInt(File,"Score",GetPlayerScore(playerid));
INI_WriteInt(File,"Skin",Player[playerid][Skin]);
INI_WriteInt(File,"Ban",Player[playerid][pBan]);
INI_WriteInt(File,"Color",GetPlayerColor(playerid));
INI_WriteInt(File,"Team",gTeam[playerid]);
INI_WriteInt(File,"Ninja",Player[playerid][pninja]);
INI_WriteInt(File,"clothes",Player[playerid][pclothes]);
INI_WriteInt(File,"ninjaskin",Player[playerid][pskin]);
INI_WriteInt(File,"Leader",Player[playerid][pLeader]);
INI_WriteInt(File,"UseSpawnPos",Player[playerid][pUsePos]);
INI_WriteFloat(File,"FloatA",Player[playerid][pA]);
INI_WriteFloat(File,"FloatX",Player[playerid][pX1]);
INI_WriteFloat(File,"FloatY",Player[playerid][pY1]);
INI_WriteFloat(File,"FloatZ",Player[playerid][pZ1]);
INI_WriteInt(File,"HasSavedPos",Player[playerid][pHasSavedPos]);
INI_WriteInt(File,"Bombs",Player[playerid][Bomb]);
INI_WriteInt(File,"Cowboyhat",Player[playerid][hat1]);
INI_WriteInt(File,"whitehat",Player[playerid][hat2]);
INI_WriteInt(File,"blackhat",Player[playerid][hat3]);
INI_Close(File);
// SavePlayerData(playerid);
return 1;
}
OnPlayerDialog
//-------------------------------------------------------------------------------------------
switch( dialogid )
{
case DIALOG_REGISTER:
{
if (!response) return Kick(playerid);
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""COL_WHITE"Registering...",""COL_RED"You have entered an invalid password.\n"COL_WHITE"Type your password below to register a new account.","Register","Quit");
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"Password",udb_hash(inputtext));
INI_WriteInt(File,"Cash",0);
INI_WriteInt(File,"Admin",0);
INI_WriteInt(File,"Kills",0);
INI_WriteInt(File,"Deaths",0);
INI_WriteInt(File,"Score",0);
INI_WriteInt(File,"Skin",0);
INI_WriteInt(File,"Ban",0);
INI_WriteInt(File,"Color",0);
INI_WriteInt(File,"Team",0);
INI_WriteInt(File,"Ninja",0);
INI_WriteInt(File,"Clothes",0);
INI_WriteInt(File,"skinNinja",0);
INI_WriteInt(File,"Leader",0);
INI_WriteInt(File,"UseSpawnPos",0);
INI_WriteFloat(File,"FloatA",0);
INI_WriteFloat(File,"FloatX",0);
INI_WriteFloat(File,"FloatY",0);
INI_WriteFloat(File,"FloatZ",0);
INI_WriteInt(File,"HasSavedPos",0);
INI_WriteInt(File,"Bombs",0);
INI_WriteInt(File,"Cowboyhat",0);
INI_WriteInt(File,"whitehat",0);
INI_WriteInt(File,"blackhat",0);
INI_Close(File);
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Welcome You have successfully Registered!! ");
}
}
case DIALOG_LOGIN:
{
if ( !response ) return Kick ( playerid );
if( response )
{
if(udb_hash(inputtext) == Player[playerid][pPass])
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
SendClientMessage(playerid, COLOR_ORANGE, "/Help ,/Animlist,/Rules,/stats");
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Welcome You have successfully logged in ");
GivePlayerMoney(playerid, Player[playerid][pCash]);
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"You have entered an incorrect password.\n"COL_WHITE"Type your password below to login.","Login","Quit");
}
return 0;
}
}
}
return 0;
}
forward LoadUser_data(playerid,name[],value[]);
public LoadUser_data(playerid,name[],value[])
{
INI_Int("Password",Player[playerid][pPass]);
INI_Int("Cash",Player[playerid][pCash]);
INI_Int("Admin",Player[playerid][pAdmin]);
INI_Int("Kills",Player[playerid][pKills]);
INI_Int("Deaths",Player[playerid][pDeaths]);
INI_Int("Score",Player[playerid][pScore]);
INI_Int("Skin",Player[playerid][Skin]);
INI_Int("Ban",Player[playerid][pBan]);
INI_Int("Color",Player[playerid][pcolor]);
INI_Int("Team",gTeam[playerid]);
INI_Int("Ninja",Player[playerid][pninja]);
INI_Int("clothes",Player[playerid][pclothes]);
INI_Int("ninjaskin",Player[playerid][pskin]);
INI_Int("Leader",Player[playerid][pLeader]);
INI_Int("UseSpawnPos",Player[playerid][pUsePos]);
INI_Float("FloatA",Player[playerid][pA]);
INI_Float("FloatX",Player[playerid][pX1]);
INI_Float("FloatY",Player[playerid][pY1]);
INI_Float("FloatZ",Player[playerid][pZ1]);
INI_Int("HasSavedPos",Player[playerid][pHasSavedPos]);
INI_Int("Bombs",Player[playerid][Bomb]);
INI_Int("Cowboyhat",Player[playerid][hat1]);
INI_Int("whitehat",Player[playerid][hat2]);
INI_Int("blackhat",Player[playerid][hat3]);
return 1;
}
stock GetName(playerid)
{
new dName[MAX_PLAYER_NAME];
GetPlayerName(playerid, dName, sizeof(dName));
return dName;
}
stock UserPath(playerid)
{
new string[128],playername[MAX_PLAYER_NAME];
GetPlayerName(playerid,playername,sizeof(playername));
format(string,sizeof(string),PATH,playername);
return string;
}
stock udb_hash(buf[]) {
new length=strlen(buf);
new s1 = 1;
new s2 = 0;
new n;
for (n=0; n<length; n++)
{
s1 = (s1 + buf[n]) % 65521;
s2 = (s2 + s1) % 65521;
}
return (s2 << 16) + s1;
}
Level,
INI_WriteInt(File,"Level",Player[playerid][level]);