forward SaveChar(playerid); public SaveChar(playerid) { if(!IsPlayerConnected(playerid)) return 1; GetPlayerPos(playerid, PlayerInfo[playerid][pX], PlayerInfo[playerid][pY], PlayerInfo[playerid][pZ]); new INI:File = INI_Open(UserPath(playerid)); INI_SetTag(File, "data"); INI_WriteInt(File, "Cash", GetPlayerMoney(playerid)); INI_WriteFloat(File,"PosX",PlayerInfo[playerid][pX]); INI_WriteFloat(File,"PosY",PlayerInfo[playerid][pY]); INI_WriteFloat(File,"PosZ",PlayerInfo[playerid][pZ]); INI_WriteInt(File, "Admin", PlayerInfo[playerid][pAdmin]); INI_WriteInt(File, "Helper", PlayerInfo[playerid][pHelper]); INI_WriteInt(File, "Prisoned", PlayerInfo[playerid][pPrisonReason]); INI_WriteInt(File, "Wanted", PlayerInfo[playerid][pWantedLevel]); INI_WriteInt(File, "Arrests", PlayerInfo[playerid][pArrests]); INI_WriteInt(File, "Crimes", PlayerInfo[playerid][pCrimes]); INI_WriteInt(File, "Jailed", PlayerInfo[playerid][pJailed]); INI_WriteInt(File, "Level", PlayerInfo[playerid][pLevel]); INI_WriteInt(File, "Warnings", PlayerInfo[playerid][pWarns]); INI_WriteInt(File, "CSR", PlayerInfo[playerid][pShopTech]); INI_WriteInt(File, "Order", PlayerInfo[playerid][pOrder]); INI_WriteInt(File, "Character", PlayerInfo[playerid][pChar]); INI_WriteInt(File, "Interior", PlayerInfo[playerid][pInt]); INI_WriteInt(File, "VirtualWorld", PlayerInfo[playerid][pVW]); INI_WriteInt(File, "Pot", PlayerInfo[playerid][pPot]); INI_WriteInt(File, "Heroin", PlayerInfo[playerid][pHeroin]); INI_WriteInt(File, "Crack", PlayerInfo[playerid][pCrack]); INI_WriteInt(File, "Meth", PlayerInfo[playerid][pMeth]); INI_WriteInt(File, "GiftTime", PlayerInfo[playerid][pGiftTime]); INI_WriteInt(File, "PlayingHours", PlayerInfo[playerid][pTime]); INI_WriteInt(File, "Exp", PlayerInfo[playerid][pExp]); INI_WriteInt(File, "Faction", PlayerInfo[playerid][pTeam]); INI_WriteInt(File, "Rank", PlayerInfo[playerid][pRank]); INI_WriteInt(File, "Leader", PlayerInfo[playerid][pLeader]); INI_WriteInt(File, "Member", PlayerInfo[playerid][pMember]); INI_WriteInt(File, "Accept", PlayerInfo[playerid][pAcceptID]); INI_WriteInt(File, "FMember", PlayerInfo[playerid][pFMember]); INI_WriteInt(File, "Division", PlayerInfo[playerid][pDivision]); INI_WriteInt(File, "Restricted", PlayerInfo[playerid][pWRestricted]); INI_WriteInt(File, "AGuns", PlayerInfo[playerid][pAGuns]); INI_WriteInt(File, "Guns", PlayerInfo[playerid][pGuns]); INI_WriteInt(File, "GunAmmo", PlayerInfo[playerid][pGunAmmo]); INI_WriteInt(File, "AMSSent", PlayerInfo[playerid][pAMSSent]); INI_WriteInt(File, "ReportsAccepted", PlayerInfo[playerid][pReportsAccepted]); INI_WriteInt(File, "BadgeNumber", PlayerInfo[playerid][pBadgeNum]); INI_Close(File); new str[128]; format(str, sizeof(str), "%s Character has been saved", GetPlayerNameEx(playerid)); print(str); return 1; }
I can't see it saving password anywhere.
Try CTRL+H or F and search for underneath INI_WriteInt(File, "Password" Or check the userfiles to see if their passwords are saved or any other clues why it wont work properly. |
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { 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,"Helper",0); INI_WriteInt(File,"Prisoned",0); INI_WriteInt(File,"Wanted",0); INI_WriteInt(File,"Arrests",0); INI_WriteInt(File,"Crimes",0); INI_WriteInt(File,"Jailed",0); INI_WriteInt(File,"Level",1); INI_WriteInt(File,"Warnings",0); INI_WriteInt(File,"CSR",0); INI_WriteInt(File,"Order",0); INI_WriteInt(File,"Character",0); INI_WriteInt(File,"Interior",0); INI_WriteInt(File,"VirtualWorld",0); INI_WriteInt(File,"Pot",0); INI_WriteInt(File,"Heroin",0); INI_WriteInt(File,"Crack",0); INI_WriteInt(File,"Meth",0); INI_WriteInt(File,"GiftTime",0); INI_WriteInt(File,"PlayingHours",0); INI_WriteInt(File,"Exp",0); INI_WriteInt(File,"Faction",0); INI_WriteInt(File,"Rank",0); INI_WriteInt(File,"Leader",0); INI_WriteInt(File,"Member",0); INI_WriteInt(File,"Accept",0); INI_WriteInt(File,"FMember",0); INI_WriteInt(File,"Division",0); INI_WriteInt(File,"Restricted",0); INI_WriteInt(File,"AGuns",0); INI_WriteInt(File,"Guns",0); INI_WriteInt(File,"GunAmmo",0); INI_WriteInt(File,"AMSSent",0); INI_WriteInt(File,"ReportsAccepted",0); INI_WriteInt(File,"BadgeNumber",0); INI_Close(File); SetPlayerCameraPos(playerid,1520.2188,-1712.0742,40.5350); SetPlayerCameraLookAt(playerid,1478.4708,-1754.7579,16.7400); ShowPlayerDialog(playerid, DIALOG_RULES, DIALOG_STYLE_MSGBOX, "Server", " This is the Government HQ where the Mayor/ Governor makes all the financial decisions!\n Los Angeles Life Style Roleplay would like to welcome you to Los Angeles\n and hope you have a smashing time!", "OK","No"); SetTimerEx("SaveChar", 100, true, "i", playerid); GivePlayerMoney(playerid, 10000); } } case DIALOG_LOGIN: { if(!response) return Kick (playerid); if(response) { if(udb_hash(inputtext) == PlayerInfo[playerid][pPass]) { INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid); GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]); SetSpawnInfo(playerid, 0, 299, PlayerInfo[playerid][pX], PlayerInfo[playerid][pY], PlayerInfo[playerid][pZ],0, 0, 0, 0, 0, 0, 0); SpawnPlayer(playerid); SetCameraBehindPlayer(playerid); SetTimerEx("SaveChar", 200000, true, "i", playerid); } 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"); } } } case DIALOG_RULES: { if(!response) return Kick(playerid); else { SetPlayerPos(playerid, 1478.4708,-1754.7579,-10.0); SetCameraBehindPlayer(playerid); ShowPlayerDialog(playerid,DIALOG_SHOW_INFO,DIALOG_STYLE_MSGBOX, "{12C1ED}Rules", "{12C1ED}By registering at Los Angeles Life Style Roleplay, you have accepted our policies and rules.", "Okay", ""); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Hello, welcome to Los Angeles Life Style Roleplay, this is a new developed server by Callum Riley, if you find any bugs"); SendClientMessage(playerid, COLOR_LIGHTBLUE, "please report them to a high administrator, preferbly an Shift Manager +"); SendClientMessage(playerid, COLOR_YELLOW, "We hope you enjoy your time here at Los Angeles Life Style Roleplay! Remember: /rules"); PlayerInfo[playerid][pX] = 1780.1759; PlayerInfo[playerid][pY] = -1933.6698; PlayerInfo[playerid][pZ] = 13.3859; PlayerInfo[playerid][pCash] = 10000; PlayerInfo[playerid][pPot] += 5; PlayerInfo[playerid][pCrack] += 6; PlayerInfo[playerid][pMeth] += 3; PlayerInfo[playerid][pHeroin] += 10; PlayerInfo[playerid][pExp] += 3; PlayerInfo[playerid][pTime] += 3; PlayerInfo[playerid][pChar] = 170; SetSpawnInfo(playerid, 0, 299, 1780.1759,-1933.6698,13.3859,356.5534, 0, 0, 0, 0, 0, 0); } } } return 1; }
public LoadUser_data(playerid, name[], value[])
About your DIALOG_REGISTER Basically what you do is: Write A in the file with value : 0 Write B in the file with value : 2 Then you call in the saving function that saves the player data. That function does this: Write A in the file with value : [whatever value the variable has at that very moment] Write B in the file with value : [whatever value the variable has at that very moment] |
forward LoadUser_data(playerid, name[], value[]); public LoadUser_data(playerid, name[], value[]) { INI_Int("Password", PlayerInfo[playerid][pPass]); INI_Int("Cash",PlayerInfo[playerid][pCash]); INI_Float("PosX", PlayerInfo[playerid][pX]); INI_Float("PosY", PlayerInfo[playerid][pY]); INI_Float("PosZ", PlayerInfo[playerid][pZ]); INI_Int("Admin",PlayerInfo[playerid][pAdmin]); INI_Int("Helper",PlayerInfo[playerid][pHelper]); INI_Int("Prisoned",PlayerInfo[playerid][pPrisonReason]); INI_Int("Wanted",PlayerInfo[playerid][pWantedLevel]); INI_Int("Arrests",PlayerInfo[playerid][pArrests]); INI_Int("Crimes",PlayerInfo[playerid][pCrimes]); INI_Int("Jailed",PlayerInfo[playerid][pJailed]); INI_Int("Level",PlayerInfo[playerid][pLevel]); INI_Int("Warnings",PlayerInfo[playerid][pWarns]); INI_Int("CSR",PlayerInfo[playerid][pShopTech]); INI_Int("Order",PlayerInfo[playerid][pOrder]); INI_Int("Character",PlayerInfo[playerid][pChar]); INI_Int("Interior",PlayerInfo[playerid][pInt]); INI_Int("VirtualWorld",PlayerInfo[playerid][pVW]); INI_Int("Pot",PlayerInfo[playerid][pPot]); INI_Int("Heroin",PlayerInfo[playerid][pHeroin]); INI_Int("Meth",PlayerInfo[playerid][pMeth]); INI_Int("GiftTime",PlayerInfo[playerid][pGiftTime]); INI_Int("PlayingHours",PlayerInfo[playerid][pTime]); INI_Int("Exp",PlayerInfo[playerid][pExp]); INI_Int("Faction",PlayerInfo[playerid][pTeam]); INI_Int("Rank",PlayerInfo[playerid][pRank]); INI_Int("Leader",PlayerInfo[playerid][pLeader]); INI_Int("Member",PlayerInfo[playerid][pMember]); INI_Int("Accept",PlayerInfo[playerid][pAcceptID]); INI_Int("FMember",PlayerInfo[playerid][pFMember]); INI_Int("Division",PlayerInfo[playerid][pDivision]); INI_Int("Restricted",PlayerInfo[playerid][pWRestricted]); INI_Int("AGuns",PlayerInfo[playerid][pAGuns]); INI_Int("Guns",PlayerInfo[playerid][pGuns]); INI_Int("GunAmmo",PlayerInfo[playerid][pGunAmmo]); INI_Int("AMSSent",PlayerInfo[playerid][pAMSSent]); INI_Int("ReportsAccepted",PlayerInfo[playerid][pReportsAccepted]); INI_Int("BadgeNumber",PlayerInfo[playerid][pBadgeNum]); return 1; }
SetTimerEx("SaveChar", 100, true, "i", playerid);
INI_WriteInt(File,"BadgeNumber",0);
public OnPlayerRequestClass(playerid, classid) { SetSpawnInfo(playerid, 0, 120, PlayerInfo[playerid][pX], PlayerInfo[playerid][pY], PlayerInfo[playerid][pZ], 0, 0, 0, 0, 0, 0, 0); SpawnPlayer(playerid); return 1; }
if(fexist(UserPath(playerid)))
{
ShowPlayerDialog(/*Dialog*/);
}
else
{
ShowPlayerDialog(/*Dialog*/);
}