OnPlayerConnect(playerid) { if(fexist(filename)) //I formatted the filename to be exactly my name(for testing purposes). { print("Exists."); INI_ParseFile(filename, "LoadUser",.bExtra = true,.extra = playerid,.bPassTag = true); } return 1; } new score; forward LoadUser(playerid, name[], value[]); public LoadUser(playerid, name[], value[]) { print("Yep"); INI_Int("score", score); SetPlayerScore(playerid, score); return 1; }
The callback is called once per value in the script, for you to save the data in global variables and use later. It isn't designed for using the values in the callback itself, since nothing after `INI_Int` will be run.
It was a poor design choice, but it was the choice and now it's done. |
OnPlayerConnect(playerid) { new PlayerFile[64]; format(PlayerFile, sizeof(PlayerFile), "/Users/%s.ini", GetName(playerid)); if(fexist(PlayerFile)) { INI_ParseFile(PlayerFile, "LoadUser", .bExtra = true, .extra = playerid, .bPassTag = true); //INI_Load(PlayerFile); print("Exists!"); } return 1; } forward LoadUser(playerid, name[], value[]); public LoadUser(playerid, name[], value[]) { INI_Int("Kills", pInfo[playerid][pKills]); INI_Int("Deaths", pInfo[playerid][pDeaths]); INI_Int("Admin", pInfo[playerid][pAdmin]); INI_Int("Vip", pInfo[playerid][pVip]); ... return 0; }
Because you set `bPassTag` but didn't provide a callback parameter for it.
|
OnPlayerConnect(playerid) { new PlayerFile[64]; format(PlayerFile, sizeof(PlayerFile), "/Users/%s.ini", GetName(playerid)); if(fexist(PlayerFile)) { INI_ParseFile(PlayerFile, "LoadUser_%s", .bExtra = true, .extra = playerid); //INI_Load(PlayerFile); print("Exists!"); } return 1; } forward LoadUser_data(playerid, name[], value[]); public LoadUser_data(playerid, name[], value[]) { INI_Int("Kills", pInfo[playerid][pKills]); INI_Int("Deaths", pInfo[playerid][pDeaths]); INI_Int("Admin", pInfo[playerid][pAdmin]); INI_Int("Vip", pInfo[playerid][pVip]); ... return 0; }
INI_ParseFile(PlayerFile, "LoadUser_%s", .bExtra = true, .extra = playerid);
INI_ParseFile(PlayerFile, "LoadUser_data", .bExtra = true, .extra = playerid);