• Hey Guest! Ever feel like entering a Game Jam, but the time limit is always too much pressure? We get it... You lead a hectic life and dedicating 3 whole days to make a game just doesn't work for you! So, why not enter the GMC SLOW JAM? Take your time! Kick back and make your game over 4 months! Interested? Then just click here!

Can't save letters in ini file

hijong park

Member
I made a local highscore with 3 letters for each score's name, so I made an ini file to save them.

However, While scores are saved and loaded correctly, All letters become "1" when I loaded the ini save file. How to fix it ?

This is how I made the ini save:
1. Saving ini file

Code:
if (file_exists("highscoredata.sav")) file_delete("highscoredata.sav");
ini_open("highscoredata.sav");
ini_write_real("scoreSave","name1",global.name1);
ini_write_real("scoreSave","name2",global.name2);
ini_write_real("scoreSave","name3",global.name3);
ini_write_real("scoreSave","name4",global.name4);
ini_write_real("scoreSave","name5",global.name5);
ini_write_real("scoreSave","name6",global.name6);
ini_write_real("scoreSave","name7",global.name7);
ini_write_real("scoreSave","name8",global.name8);
ini_write_real("scoreSave","name9",global.name9);
ini_write_real("scoreSave","name10",global.name10);
ini_write_real("scoreSave","score1",global.score1);
ini_write_real("scoreSave","score2",global.score2);
ini_write_real("scoreSave","score3",global.score3);
ini_write_real("scoreSave","score4",global.score4);
ini_write_real("scoreSave","score5",global.score5);
ini_write_real("scoreSave","score6",global.score6);
ini_write_real("scoreSave","score7",global.score7);
ini_write_real("scoreSave","score8",global.score8);
ini_write_real("scoreSave","score9",global.score9);
ini_write_real("scoreSave","score10",global.score10);
ini_close();
2. Loading ini file

Code:
if (file_exists("highscoredata.sav"))
{
    ini_open("highscoredata.sav");
    global.name1 = ini_read_real("scoreSave","name1",0);
    global.name2 = ini_read_real("scoreSave","name2",0);
    global.name3 = ini_read_real("scoreSave","name3",0);
    global.name4 = ini_read_real("scoreSave","name4",0);
    global.name5 = ini_read_real("scoreSave","name5",0);
    global.name6 = ini_read_real("scoreSave","name6",0);
    global.name7 = ini_read_real("scoreSave","name7",0);
    global.name8 = ini_read_real("scoreSave","name8",0);
    global.name9 = ini_read_real("scoreSave","name9",0);
    global.name10 = ini_read_real("scoreSave","name10",0);
    global.score1 = ini_read_real("scoreSave","score1",0);
    global.score2 = ini_read_real("scoreSave","score2",0);
    global.score3 = ini_read_real("scoreSave","score3",0);
    global.score4 = ini_read_real("scoreSave","score4",0);
    global.score5 = ini_read_real("scoreSave","score5",0);
    global.score6 = ini_read_real("scoreSave","score6",0);
    global.score7 = ini_read_real("scoreSave","score7",0);
    global.score8 = ini_read_real("scoreSave","score8",0);
    global.score9 = ini_read_real("scoreSave","score9",0);
    global.score10 = ini_read_real("scoreSave","score10",0);
    ini_close();
}
else {
global.name1 = "HJP"
global.name2 = "WON"
global.name3 = "MYF"
global.name4 = "AVO"
global.name5 = "RIT"
global.name6 = "EGA"
global.name7 = "MES"
global.name8 = "AST"
global.name9 = "ERO"
global.name10 = "IDS"
global.score1 = 100000
global.score2 = 90000
global.score3 = 80000
global.score4 = 70000
global.score5 = 60000
global.score6 = 50000
global.score7 = 40000
global.score8 = 30000
global.score9 = 20000
global.score10 = 10000
}
 
S

Sam (Deleted User)

Guest
Use ini_read_string and ini_write_string instead. real is for doing numbers (with double precision applied).
 
Top