PDA

View Full Version : Register save problem


DarkLored
16/05/2014, 01:31 AM
When i register i don't get the stats when i finished registering the only way to get it is when you reconnect
how can i fix this sort of problem i have tried many ways.

here is my code
if(dialogid == Register) //If dialog id is a register dialog
{//then
new banknumber = 10000 + random(15000);
if(!response) return Kick(playerid); //If they clicked the second button "Quit", we will kick them.
if(response) //if they clicked the first button "Register"
{//then
if(!strlen(inputtext)) //If they didn't enter any password
{// then we will tell to them to enter the password to register
ShowPlayerDialog(playerid,Register,DIALOG_STYLE_IN PUT,"Register","You have passed the quiz.\nEnter your password inorder to create a character.","Register","Quit");
return 1;
}
//If they have entered a correct password for his/her account...
new hashpass[129]; //Now we will create a new variable to hash his/her password
WP_Hash(hashpass,sizeof(hashpass),inputtext);//We will use whirlpool to hash their inputted text
new INI:file = INI_Open(Path(playerid)); // we will open a new file for them to save their account inside of Scriptfiles/Users folder
INI_SetTag(file,"Player's Data");//We will set a tag inside of user's account called "Player's Data"
INI_WriteString(file,"Password",hashpass);//This will write a hashed password into user's account
INI_WriteInt(file,"Race",0);
INI_WriteInt(file,"Gender",0);
INI_WriteInt(file,"Age",0);
INI_WriteInt(file,"House_Adress",0);
INI_WriteInt(file,"Job",0);
INI_WriteInt(file,"Driving_License",0);
INI_WriteInt(file,"Firearms_License",0);
INI_WriteInt(file,"Faction",0);
INI_WriteInt(file,"Faction_Rank",0);
INI_WriteInt(file,"Health",80);
INI_WriteInt(file,"Armour",0);
INI_WriteInt(file,"Cash",300);
INI_WriteInt(file,"Bank_Cash",1000);
INI_WriteInt(file,"Bank_Account_Number", banknumber);
INI_WriteInt(file,"Pots", 0);
INI_WriteInt(file,"Crack", 0);
INI_WriteInt(file,"Materials", 0);
INI_WriteInt(file,"Meth", 0);
INI_WriteInt(file,"Heroin", 0);
INI_WriteInt(file,"Radio", 0);
INI_WriteInt(file,"RadioFreq", 0);
INI_WriteInt(file,"ColdMeds", 0);
INI_WriteInt(file,"Acids", 0);
INI_WriteInt(file,"Seeds", 0);
INI_WriteInt(file,"Pizza", 0);
INI_WriteInt(file,"Total_Deaths",0);
INI_WriteInt(file,"Next_Medical_Bill", 50);
INI_WriteInt(file,"Level",SetPlayerScore(playerid,1));
INI_WriteInt(file,"Experience",0);
INI_WriteInt(file,"Learning_Points",1);
INI_WriteInt(file,"Payday_Progress",0);
INI_WriteInt(file,"Total_Playing_Time",0);
INI_WriteInt(file,"Donator_Level", 0);
INI_WriteInt(file,"Admin_Level", 0);
INI_WriteInt(file,"Mask", 0);
INI_WriteInt(file,"Skin", 0);
INI_WriteInt(file,"Object_1",0);
INI_WriteInt(file,"Object_2",0);
INI_WriteInt(file,"Object_3",0);
INI_WriteInt(file,"Object_4",0);
INI_WriteInt(file,"Object_5",0);
INI_WriteInt(file,"Object_6",0);
INI_WriteInt(file,"Human_Reload",0);
INI_WriteInt(file,"Human_Financial",0);
INI_WriteInt(file,"Unarmed/Strength",0);
INI_WriteInt(file,"Knife_Skills",0);
INI_WriteInt(file,"Katana_Skills",0);
INI_WriteInt(file,"Katana_Throw_Skills",0);
INI_WriteInt(file,"Colt_45_Skills",0);
INI_WriteInt(file,"SD/Taser_Skills",0);
INI_WriteInt(file,"Deagle_Skills",0);
INI_WriteInt(file,"Shotgun_Skills",0);
INI_WriteInt(file,"SPAS_12_Skills",0);
INI_WriteInt(file,"Tec_9/Uzi_Skills",0);
INI_WriteInt(file,"MP5_Skills",0);
INI_WriteInt(file,"AK_47_Skills",0);
INI_WriteInt(file,"M4_Skills",0);
INI_WriteInt(file,"Rifle_Skills",0);
INI_WriteInt(file,"Thrown_Weapons",0);
INI_WriteInt(file,"Throwing_Knife",0);
INI_WriteInt(file,"Heavy_Artillery",0);
INI_WriteInt(file,"Swimming_Skills",0);
INI_WriteInt(file,"Vehicle_Slot_1",411);
INI_WriteInt(file,"Vehicle_Slot_2",0);
INI_WriteInt(file,"Vehicle_Slot_3",0);
INI_WriteInt(file,"Vehicle_Slot_4",0);
INI_WriteInt(file,"Vehicle_Slot_5",0);
INI_WriteInt(file,"Vehicle_Slot_6",0);
INI_WriteInt(file,"Weapon_Slot_1",0);
INI_WriteInt(file,"Weapon_Slot_2",0);
INI_WriteInt(file,"Weapon_Slot_3",0);
INI_WriteInt(file,"Weapon_Slot_4",0);
INI_WriteInt(file,"Weapon_Slot_5",0);
INI_WriteInt(file,"Weapon_Slot_6",0);
INI_WriteInt(file,"Weapon_Slot_7",0);
INI_WriteInt(file,"Ammo_Slot_1",0);
INI_WriteInt(file,"Ammo_Slot_2",0);
INI_WriteInt(file,"Ammo_Slot_3",0);
INI_WriteInt(file,"Ammo_Slot_4",0);
INI_WriteInt(file,"Ammo_Slot_5",0);
INI_WriteInt(file,"Ammo_Slot_6",0);
INI_WriteInt(file,"Ammo_Slot_7",0);
INI_WriteInt(file,"Jail_Time",0);
INI_WriteInt(file,"Arrest_Time",0);
INI_WriteInt(file,"Cuffed",0);
INI_WriteInt(file,"Arrested",0);
INI_Close(file);//Now after we've done saving their data, we now need to close the file
SendClientMessage(playerid,-1,"You have been successfully registered");//Tell to them that they have successfully registered a new account
ShowPlayerDialog(playerid,SexPicking,DIALOG_STYLE_ LIST,"Choose your gender","Male\nFemale","Select","");
return 1;
}
}

Ramoboss
16/05/2014, 01:54 AM
i just encountred this problem now x)

i solved id :)

replace your code with this :

if(dialogid == Register) //If dialog id is a register dialog
{//then
new banknumber = 10000 + random(15000);
if(!response) return Kick(playerid); //If they clicked the second button "Quit", we will kick them.
if(response) //if they clicked the first button "Register"
{//then
if(!strlen(inputtext)) //If they didn't enter any password
{// then we will tell to them to enter the password to register
ShowPlayerDialog(playerid,Register,DIALOG_STYLE_IN PUT,"Register","You have passed the quiz.\nEnter your password inorder to create a character.","Register","Quit");
return 1;
}
//If they have entered a correct password for his/her account...
new hashpass[129]; //Now we will create a new variable to hash his/her password
WP_Hash(hashpass,sizeof(hashpass),inputtext);//We will use whirlpool to hash their inputted text
new INI:file = INI_Open(Path(playerid)); // we will open a new file for them to save their account inside of Scriptfiles/Users folder
INI_SetTag(file,"Player's Data");//We will set a tag inside of user's account called "Player's Data"
INI_WriteString(file,"Password",hashpass);//This will write a hashed password into user's account
INI_WriteInt(file,"Race",0);
INI_WriteInt(file,"Gender",0);
INI_WriteInt(file,"Age",0);
INI_WriteInt(file,"House_Adress",0);
INI_WriteInt(file,"Job",0);
INI_WriteInt(file,"Driving_License",0);
INI_WriteInt(file,"Firearms_License",0);
INI_WriteInt(file,"Faction",0);
INI_WriteInt(file,"Faction_Rank",0);
INI_WriteInt(file,"Health",80);
INI_WriteInt(file,"Armour",0);
INI_WriteInt(file,"Cash",300);
INI_WriteInt(file,"Bank_Cash",1000);
INI_WriteInt(file,"Bank_Account_Number", banknumber);
INI_WriteInt(file,"Pots", 0);
INI_WriteInt(file,"Crack", 0);
INI_WriteInt(file,"Materials", 0);
INI_WriteInt(file,"Meth", 0);
INI_WriteInt(file,"Heroin", 0);
INI_WriteInt(file,"Radio", 0);
INI_WriteInt(file,"RadioFreq", 0);
INI_WriteInt(file,"ColdMeds", 0);
INI_WriteInt(file,"Acids", 0);
INI_WriteInt(file,"Seeds", 0);
INI_WriteInt(file,"Pizza", 0);
INI_WriteInt(file,"Total_Deaths",0);
INI_WriteInt(file,"Next_Medical_Bill", 50);
INI_WriteInt(file,"Level",SetPlayerScore(playerid,1));
INI_WriteInt(file,"Experience",0);
INI_WriteInt(file,"Learning_Points",1);
INI_WriteInt(file,"Payday_Progress",0);
INI_WriteInt(file,"Total_Playing_Time",0);
INI_WriteInt(file,"Donator_Level", 0);
INI_WriteInt(file,"Admin_Level", 0);
INI_WriteInt(file,"Mask", 0);
INI_WriteInt(file,"Skin", 0);
INI_WriteInt(file,"Object_1",0);
INI_WriteInt(file,"Object_2",0);
INI_WriteInt(file,"Object_3",0);
INI_WriteInt(file,"Object_4",0);
INI_WriteInt(file,"Object_5",0);
INI_WriteInt(file,"Object_6",0);
INI_WriteInt(file,"Human_Reload",0);
INI_WriteInt(file,"Human_Financial",0);
INI_WriteInt(file,"Unarmed/Strength",0);
INI_WriteInt(file,"Knife_Skills",0);
INI_WriteInt(file,"Katana_Skills",0);
INI_WriteInt(file,"Katana_Throw_Skills",0);
INI_WriteInt(file,"Colt_45_Skills",0);
INI_WriteInt(file,"SD/Taser_Skills",0);
INI_WriteInt(file,"Deagle_Skills",0);
INI_WriteInt(file,"Shotgun_Skills",0);
INI_WriteInt(file,"SPAS_12_Skills",0);
INI_WriteInt(file,"Tec_9/Uzi_Skills",0);
INI_WriteInt(file,"MP5_Skills",0);
INI_WriteInt(file,"AK_47_Skills",0);
INI_WriteInt(file,"M4_Skills",0);
INI_WriteInt(file,"Rifle_Skills",0);
INI_WriteInt(file,"Thrown_Weapons",0);
INI_WriteInt(file,"Throwing_Knife",0);
INI_WriteInt(file,"Heavy_Artillery",0);
INI_WriteInt(file,"Swimming_Skills",0);
INI_WriteInt(file,"Vehicle_Slot_1",411);
INI_WriteInt(file,"Vehicle_Slot_2",0);
INI_WriteInt(file,"Vehicle_Slot_3",0);
INI_WriteInt(file,"Vehicle_Slot_4",0);
INI_WriteInt(file,"Vehicle_Slot_5",0);
INI_WriteInt(file,"Vehicle_Slot_6",0);
INI_WriteInt(file,"Weapon_Slot_1",0);
INI_WriteInt(file,"Weapon_Slot_2",0);
INI_WriteInt(file,"Weapon_Slot_3",0);
INI_WriteInt(file,"Weapon_Slot_4",0);
INI_WriteInt(file,"Weapon_Slot_5",0);
INI_WriteInt(file,"Weapon_Slot_6",0);
INI_WriteInt(file,"Weapon_Slot_7",0);
INI_WriteInt(file,"Ammo_Slot_1",0);
INI_WriteInt(file,"Ammo_Slot_2",0);
INI_WriteInt(file,"Ammo_Slot_3",0);
INI_WriteInt(file,"Ammo_Slot_4",0);
INI_WriteInt(file,"Ammo_Slot_5",0);
INI_WriteInt(file,"Ammo_Slot_6",0);
INI_WriteInt(file,"Ammo_Slot_7",0);
INI_WriteInt(file,"Jail_Time",0);
INI_WriteInt(file,"Arrest_Time",0);
INI_WriteInt(file,"Cuffed",0);
INI_WriteInt(file,"Arrested",0);
INI_Close(file);//Now after we've done saving their data, we now need to close the file
SendClientMessage(playerid,-1,"You have been successfully registered");//Tell to them that they have successfully registered a new account
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
ShowPlayerDialog(playerid,SexPicking,DIALOG_STYLE_ LIST,"Choose your gender","Male\nFemale","Select","");
return 1;
}
}


it's an issue, look, when you register, you close your file, you have just to réopen it :)

ATTENTION : if you remove the close line, he will give you a blank .ini file

DarkLored
16/05/2014, 02:55 AM
Thank you so much it helped me +1 :)