28.12.2012, 16:32
Код:
#define PATH "/Users/%s.ini"I forward LoadUser_data(playerid,name[],value[]); public LoadUser_data(playerid,name[],value[]) { INI_Int("Password",PlayerInfo[playerid][pPass]); INI_Int("Level",PlayerInfo[playerid][pLevel]); INI_Int("Cash",PlayerInfo[playerid][pCash]); INI_Int("Admin",PlayerInfo[playerid][pAdmin]); INI_Int("Age",PlayerInfo[playerid][pAge]); INI_Int("Origin",PlayerInfo[playerid][pOrigin]); INI_Int("Sex",PlayerInfo[playerid][pSex]); INI_Int("Model",PlayerInfo[playerid][pModel]); INI_Int("DriveLic",PlayerInfo[playerid][pDriveLic]); INI_Int("Place",PlayerInfo[playerid][pPlace]); INI_Int("Exp",PlayerInfo[playerid][pExp]); INI_Int("Admin",PlayerInfo[playerid][pAdmin]); INI_Int("Number",PlayerInfo[playerid][pNumber]); INI_Int("Tester",PlayerInfo[playerid][pTester]); INI_Int("Warns",PlayerInfo[playerid][pWarns]); INI_Int("Selected",PlayerInfo[playerid][pSelected]); INI_Int("Muted",PlayerInfo[playerid][pMuted]); INI_Int("MuteTime",PlayerInfo[playerid][pMuteTime]); INI_Int("FirstJoined",PlayerInfo[playerid][pFirstJoined]); INI_Int("Vip",PlayerInfo[playerid][pVip]); INI_Int("Spawn",PlayerInfo[playerid][pSpawn]); INI_Int("Locked",PlayerInfo[playerid][pLocked]); return 1; } public OnPlayerDisconnect(playerid, reason) { new INI:File = INI_Open(UserPath(playerid)); INI_SetTag(File,"data"); INI_WriteInt(File, "Level",PlayerInfo[playerid][pLevel]); INI_WriteInt(File, "Money",PlayerInfo[playerid][pCash]); INI_WriteInt(File, "Admin",PlayerInfo[playerid][pAdmin]); INI_WriteInt(File, "Tester",PlayerInfo[playerid][pTester]); INI_WriteInt(File, "Vip",PlayerInfo[playerid][pVip]); INI_WriteInt(File, "Spawn",PlayerInfo[playerid][pSpawn]); INI_WriteInt(File, "Model",PlayerInfo[playerid][pModel]); INI_WriteInt(File, "Locked",PlayerInfo[playerid][pLocked]); INI_WriteInt(File, "FirstJoined", PlayerInfo[playerid][pFirstJoined]); INI_WriteInt(File, "Sex", PlayerInfo[playerid][pSex]); INI_WriteInt(File, "Age", PlayerInfo[playerid][pAge]); INI_WriteInt(File, "Origin", PlayerInfo[playerid][pOrigin]); INI_WriteInt(File, "Respect", PlayerInfo[playerid][pExp]); INI_WriteInt(File, "Warns", PlayerInfo[playerid][pWarns]); INI_WriteInt(File, "Selected", PlayerInfo[playerid][pSelected]); INI_WriteInt(File, "Continent", PlayerInfo[playerid][pPlace]); INI_WriteInt(File, "Muted", PlayerInfo[playerid][pMuted]); INI_WriteInt(File, "MuteTime", PlayerInfo[playerid][pMuteTime]); INI_WriteInt(File, "Ph", PlayerInfo[playerid][pNumber]); INI_WriteInt(File, "DriveLic", PlayerInfo[playerid][pDriveLic]); INI_Close(File); return 1; } stock UserPath(playerid) { new string[128],playername[MAX_PLAYER_NAME]; GetPlayerName(playerid,playername,sizeof(playername)); format(string,sizeof(string),PATH,playername); return string; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 1234) { if(!response) return Kick(playerid); if(response) { if(fexist(UserPath(playerid))) { INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid); ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_WHITE"Type your password below to login.","Login","Quit"); } else } ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT,""COL_WHITE"Registering...",""COL_WHITE"Type your password below to register a new account.","Register","Quit"); } } } }