Y_ini or Dini converting [REP+++] -
AntonioCroatia - 30.12.2013
Can you help me with saving system, I have some bugs with it.
Well I wanna make a new saving system. I using PPC gamemode.
and I want to convert saving system to Y_ini or Dini, idk witch is better.
So can you help me?
and can you convert it for me. I'll repp you.
Why I want to convert it?
Well to some player houses, money and score getting deleted, Why? IDK...
The saving code (include) is attached.
Re: Y_ini or Dini converting [REP+++] -
AntonioCroatia - 31.12.2013
Can anyone help me?
Btw does anyone know why houses and money is missing for players? Will it be fixed with y_ini?
Pls help, I can pay if you fix the bug...
Re: Y_ini or Dini converting [REP+++] -
SilentSoul - 31.12.2013
Have you tried by yourself ? i think no-one could make it for you , converting it very easy just take a look here you'll learn also :
https://sampforum.blast.hk/showthread.php?pid=1138420#pid1138420
Re: Y_ini or Dini converting [REP+++] -
kN1GhT - 31.12.2013
free tip...dont use dini....its slow
Re: Y_ini or Dini converting [REP+++] -
AntonioCroatia - 31.12.2013
I was try to make it, I was have 24 errors, some argument 3 was missing. And a lot of other errors...
Btw did you see this saving sys thet I'm using, is it good?
Re: Y_ini or Dini converting [REP+++] -
SilentSoul - 31.12.2013
It's default sa-mp file functions (fwrite , fread , fclose , etc) that's good but dini is better also dini is very old and slow and outdated , just use
Y_INI that's perfect for file functions and show us errors you get !
Re: Y_ini or Dini converting [REP+++] -
AntonioCroatia - 31.12.2013
Код:
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(12) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(13) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(14) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(15) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(16) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(17) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(18) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(19) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(20) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(21) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(22) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(23) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(24) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(25) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(26) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(27) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(28) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(29) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(30) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(31) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(32) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(33) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(34) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(35) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(36) : error 035: argument type mismatch (argument 3)
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(37) : error 035: argument type mismatch (argument 3)
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
26 Errors.
THIS ARE ERRORS
Код:
// This function will create the player-datafile for the given player (only used when a new player joins the server)
PlayerFile_Create(playerid)
{
new file[100], Name[24];
format(Name, sizeof(Name), APlayerData[playerid][PlayerName]); // Get the playername
format(file, sizeof(file), PlayerFile, Name); // Construct the complete filename for this player's account
new INI:ini = INI_Open(file);
INI_WriteString(ini, "Password", APlayerData[playerid][PlayerPassword]);
INI_WriteInt(ini, "Level", "0");
INI_WriteInt(ini, "Jailed", "0");
INI_WriteInt(ini, "Wanted", "0");
INI_WriteInt(ini, "Bans", "0");
INI_WriteInt(ini, "BanTime", "0");
INI_WriteInt(ini, "TruckerLicense", "0");
INI_WriteInt(ini, "StatsMetersDriven", "0");
INI_WriteInt(ini, "StatsTruckerJobs", "0");
INI_WriteInt(ini, "StatsConvoyJobs", "0");
INI_WriteInt(ini, "StatsBusDriverJobs", "0");
INI_WriteInt(ini, "StatsPilotJobs", "0");
INI_WriteInt(ini, "StatsMafiaJobs", "0");
INI_WriteInt(ini, "StatsMafiaStolen", "0");
INI_WriteInt(ini, "StatsPoliceFined", "0");
INI_WriteInt(ini, "StatsPoliceJailed", "0");
INI_WriteInt(ini, "StatsMedicJobs", "0");
INI_WriteInt(ini, "StatsTaxiJobs", "0");
INI_WriteInt(ini, "StatsMilitaryJobs", "0");
INI_WriteInt(ini, "StatsRibarJobs", "0");
INI_WriteInt(ini, "StatsIceJobs", "0");
INI_WriteInt(ini, "StatsFarmerJobs", "0");
INI_WriteInt(ini, "StatsTrainDriverJobs", "0");
INI_WriteInt(ini, "StatsSumarJobs", "0");
INI_WriteInt(ini, "PlayerDrugs", "0");
INI_WriteInt(ini, "VIPLevel", "0");
INI_WriteInt(ini, "Money", "0");
INI_WriteInt(ini, "Score", "0");
INI_Close(ini);
return 1;
}
// This function will load the player's datafile (used when a player connects to the server)
PlayerFile_Load(playerid)
{
// Setup local variables
new file[100], Name[24], HouseIndex, BusIndex;
format(Name, sizeof(Name), APlayerData[playerid][PlayerName]); // Get the playername
format(file, sizeof(file), PlayerFile, Name); // Construct the complete filename for this player's account
new INI:ini = INI_Open(file);
INI:ini(playerid, name[], value[])
{
INI_String(ini, "Password", APlayerData[playerid][PlayerPassword], 20);
INI_Int(ini, "Level", APlayerData[playerid][PlayerLevel]);
INI_Int(ini, "Jailed", APlayerData[playerid][PlayerJailed]);
INI_Int(ini, "Wanted", PostaviWantedLevel(playerid value[]));
INI_Int(ini, "Bans", APlayerData[playerid][Bans]);
INI_Int(ini, "BanTime", APlayerData[playerid][BanTime]);
INI_Int(ini, "TruckerLicense", APlayerData[playerid][TruckerLicense]);
INI_Int(ini, "StatsMetersDriven", APlayerData[playerid][StatsMetersDriven]);
//INI_String(ini, "Muted", APlayerData[playerid][Muted]);
INI_Int(ini, "StatsTruckerJobs", APlayerData[playerid][StatsTruckerJobs]);
INI_Int(ini, "StatsConvoyJobs", APlayerData[playerid][StatsConvoyJobs]);
INI_Int(ini, "StatsBusDriverJobs", APlayerData[playerid][StatsBusDriverJobs]);
INI_Int(ini, "StatsPilotJobs", APlayerData[playerid][StatsPilotJobs]);
INI_Int(ini, "StatsMafiaJobs", APlayerData[playerid][StatsMafiaJobs]);
INI_Int(ini, "StatsMafiaStolen", APlayerData[playerid][StatsMafiaStolen]);
INI_Int(ini, "StatsPoliceFined", APlayerData[playerid][StatsPoliceFined]);
INI_Int(ini, "StatsPoliceJailed", APlayerData[playerid][StatsPoliceJailed]);
INI_Int(ini, "StatsMedicJobs", APlayerData[playerid][StatsMedicJobs]);
INI_Int(ini, "StatsTaxiJobs", APlayerData[playerid][StatsTaxiJobs]);
INI_Int(ini, "StatsMilitaryJobs", APlayerData[playerid][StatsMilitaryJobs]);
INI_Int(ini, "StatsRibarJobs", APlayerData[playerid][StatsRibarJobs]);
INI_Int(ini, "StatsIceJobs", APlayerData[playerid][StatsIceJobs]);
INI_Int(ini, "StatsFarmerJobs", APlayerData[playerid][StatsFarmerJobs]);
INI_Int(ini, "StatsTrainDriverJobs", APlayerData[playerid][StatsTrainDriverJobs]);
INI_Int(ini, "StatsSumarJobs", APlayerData[playerid][StatsSumarJobs]);
INI_Int(ini, "PlayerDrugs", APlayerData[playerid][PlayerDrugs]);
INI_Int(ini, "VIPLevel", APlayerData[playerid][VIPLevel]);
INI_Int(ini, "Money", APlayerData[playerid][Money]);
INI_Int(ini, "Score", APlayerData[playerid][Score]);
}
return 1; // Return if the file was read correctly
}
else
return 0; // Return 0 if the file couldn't be read (doesn't exist)
}
THIS ARE CODES
Re: Y_ini or Dini converting [REP+++] -
SilentSoul - 31.12.2013
Try this.
pawn Код:
PlayerFile_Create(playerid)
{
new file[100], Name[24];
format(Name, sizeof(Name), APlayerData[playerid][PlayerName]); // Get the playername
format(file, sizeof(file), PlayerFile, Name); // Construct the complete filename for this player's account
new INI:ini = INI_Open(file);
INI_WriteString(ini, "Password", APlayerData[playerid][PlayerPassword]);
INI_WriteInt(ini, "Level", 0);
INI_WriteInt(ini, "Jailed", 0);
INI_WriteInt(ini, "Wanted", 0);
INI_WriteInt(ini, "Bans", 0);
INI_WriteInt(ini, "BanTime", 0);
INI_WriteInt(ini, "TruckerLicense", 0);
INI_WriteInt(ini, "StatsMetersDriven", 0);
INI_WriteInt(ini, "StatsTruckerJobs", 0);
INI_WriteInt(ini, "StatsConvoyJobs", 0);
INI_WriteInt(ini, "StatsBusDriverJobs", 0);
INI_WriteInt(ini, "StatsPilotJobs", 0);
INI_WriteInt(ini, "StatsMafiaJobs", 0);
INI_WriteInt(ini, "StatsMafiaStolen", 0);
INI_WriteInt(ini, "StatsPoliceFined", 0);
INI_WriteInt(ini, "StatsPoliceJailed", 0);
INI_WriteInt(ini, "StatsMedicJobs", 0);
INI_WriteInt(ini, "StatsTaxiJobs", 0);
INI_WriteInt(ini, "StatsMilitaryJobs", 0);
INI_WriteInt(ini, "StatsRibarJobs", 0);
INI_WriteInt(ini, "StatsIceJobs", 0);
INI_WriteInt(ini, "StatsFarmerJobs", 0);
INI_WriteInt(ini, "StatsTrainDriverJobs", 0);
INI_WriteInt(ini, "StatsSumarJobs", 0);
INI_WriteInt(ini, "PlayerDrugs", 0);
INI_WriteInt(ini, "VIPLevel", 0);
INI_WriteInt(ini, "Money", 0);
INI_WriteInt(ini, "Score", 0);
INI_Close(ini);
return 1;
}
You shouldn't use "" at writing an integer.
Re: Y_ini or Dini converting [REP+++] -
AntonioCroatia - 31.12.2013
That work.
Now i got this
pawn Код:
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(54) : warning 221: label name "INI" shadows tag name
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(54) : error 012: invalid function call, not a valid address
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(54) : warning 215: expression has no effect
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(54) : error 017: undefined symbol "name"
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(54) : error 029: invalid expression, assumed zero
C:\Users\Antonio\Desktop\Croatian Trucking\pawno\include\CT_FileOperations.inc(54) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
pawn Код:
PlayerFile_Load(playerid)
{
// Setup local variables
new file[100], Name[24], HouseIndex, BusIndex;
format(Name, sizeof(Name), APlayerData[playerid][PlayerName]); // Get the playername
format(file, sizeof(file), PlayerFile, Name); // Construct the complete filename for this player's account
LINE 53 new INI:ini = INI_Open(file);
INI:ini(playerid, name[], value[])
{
INI_String(ini, "Password", APlayerData[playerid][PlayerPassword], 20);
INI_Int(ini, "Level", APlayerData[playerid][PlayerLevel]);
INI_Int(ini, "Jailed", APlayerData[playerid][PlayerJailed]);
INI_Int(ini, "Wanted", PostaviWantedLevel(playerid value[]));
INI_Int(ini, "Bans", APlayerData[playerid][Bans]);
INI_Int(ini, "BanTime", APlayerData[playerid][BanTime]);
INI_Int(ini, "TruckerLicense", APlayerData[playerid][TruckerLicense]);
INI_Int(ini, "StatsMetersDriven", APlayerData[playerid][StatsMetersDriven]);
//INI_String(ini, "Muted", APlayerData[playerid][Muted]);
INI_Int(ini, "StatsTruckerJobs", APlayerData[playerid][StatsTruckerJobs]);
INI_Int(ini, "StatsConvoyJobs", APlayerData[playerid][StatsConvoyJobs]);
INI_Int(ini, "StatsBusDriverJobs", APlayerData[playerid][StatsBusDriverJobs]);
INI_Int(ini, "StatsPilotJobs", APlayerData[playerid][StatsPilotJobs]);
INI_Int(ini, "StatsMafiaJobs", APlayerData[playerid][StatsMafiaJobs]);
INI_Int(ini, "StatsMafiaStolen", APlayerData[playerid][StatsMafiaStolen]);
INI_Int(ini, "StatsPoliceFined", APlayerData[playerid][StatsPoliceFined]);
INI_Int(ini, "StatsPoliceJailed", APlayerData[playerid][StatsPoliceJailed]);
INI_Int(ini, "StatsMedicJobs", APlayerData[playerid][StatsMedicJobs]);
INI_Int(ini, "StatsTaxiJobs", APlayerData[playerid][StatsTaxiJobs]);
INI_Int(ini, "StatsMilitaryJobs", APlayerData[playerid][StatsMilitaryJobs]);
INI_Int(ini, "StatsRibarJobs", APlayerData[playerid][StatsRibarJobs]);
INI_Int(ini, "StatsIceJobs", APlayerData[playerid][StatsIceJobs]);
INI_Int(ini, "StatsFarmerJobs", APlayerData[playerid][StatsFarmerJobs]);
INI_Int(ini, "StatsTrainDriverJobs", APlayerData[playerid][StatsTrainDriverJobs]);
INI_Int(ini, "StatsSumarJobs", APlayerData[playerid][StatsSumarJobs]);
INI_Int(ini, "PlayerDrugs", APlayerData[playerid][PlayerDrugs]);
INI_Int(ini, "VIPLevel", APlayerData[playerid][VIPLevel]);
INI_Int(ini, "Money", APlayerData[playerid][Money]);
INI_Int(ini, "Score", APlayerData[playerid][Score]);
}
return 1; // Return if the file was read correctly
}
else
return 0; // Return 0 if the file couldn't be read (doesn't exist)
}
EDIT:
Код:
#define PlayerFile "ServerData/Players/%s.ini"
Player file directory is defined...
Re: Y_ini or Dini converting [REP+++] -
SilentSoul - 31.12.2013
Try that.
pawn Код:
PlayerFile_Load(playerid)
{
// Setup local variables
new file[100], Name[24], HouseIndex, BusIndex;
format(Name, sizeof(Name), APlayerData[playerid][PlayerName]); // Get the playername
format(file, sizeof(file), PlayerFile, Name); // Construct the complete filename for this player's account
new INI:ini = INI_Open(file);
INI_String(ini, "Password", APlayerData[playerid][PlayerPassword], 20);
INI_Int(ini, "Level", APlayerData[playerid][PlayerLevel]);
INI_Int(ini, "Jailed", APlayerData[playerid][PlayerJailed]);
INI_Int(ini, "Wanted", PostaviWantedLevel(playerid value[]));
INI_Int(ini, "Bans", APlayerData[playerid][Bans]);
INI_Int(ini, "BanTime", APlayerData[playerid][BanTime]);
INI_Int(ini, "TruckerLicense", APlayerData[playerid][TruckerLicense]);
INI_Int(ini, "StatsMetersDriven", APlayerData[playerid][StatsMetersDriven]);
//INI_String(ini, "Muted", APlayerData[playerid][Muted]);
INI_Int(ini, "StatsTruckerJobs", APlayerData[playerid][StatsTruckerJobs]);
INI_Int(ini, "StatsConvoyJobs", APlayerData[playerid][StatsConvoyJobs]);
INI_Int(ini, "StatsBusDriverJobs", APlayerData[playerid][StatsBusDriverJobs]);
INI_Int(ini, "StatsPilotJobs", APlayerData[playerid][StatsPilotJobs]);
INI_Int(ini, "StatsMafiaJobs", APlayerData[playerid][StatsMafiaJobs]);
INI_Int(ini, "StatsMafiaStolen", APlayerData[playerid][StatsMafiaStolen]);
INI_Int(ini, "StatsPoliceFined", APlayerData[playerid][StatsPoliceFined]);
INI_Int(ini, "StatsPoliceJailed", APlayerData[playerid][StatsPoliceJailed]);
INI_Int(ini, "StatsMedicJobs", APlayerData[playerid][StatsMedicJobs]);
INI_Int(ini, "StatsTaxiJobs", APlayerData[playerid][StatsTaxiJobs]);
INI_Int(ini, "StatsMilitaryJobs", APlayerData[playerid][StatsMilitaryJobs]);
INI_Int(ini, "StatsRibarJobs", APlayerData[playerid][StatsRibarJobs]);
INI_Int(ini, "StatsIceJobs", APlayerData[playerid][StatsIceJobs]);
INI_Int(ini, "StatsFarmerJobs", APlayerData[playerid][StatsFarmerJobs]);
INI_Int(ini, "StatsTrainDriverJobs", APlayerData[playerid][StatsTrainDriverJobs]);
INI_Int(ini, "StatsSumarJobs", APlayerData[playerid][StatsSumarJobs]);
INI_Int(ini, "PlayerDrugs", APlayerData[playerid][PlayerDrugs]);
INI_Int(ini, "VIPLevel", APlayerData[playerid][VIPLevel]);
INI_Int(ini, "Money", APlayerData[playerid][Money]);
INI_Int(ini, "Score", APlayerData[playerid][Score]);
return 1; // Return if the file was read correctly
else
return 0; // Return 0 if the file couldn't be read (doesn't exist)
}