This function will take a string that has previously been created by the function ds_map_write() and then read it into a previously created DS map . If the map that the string is being read into contains any key/value pairs, these will be cleared first before the saved map is re-constructed. Note that if the data structure was created with previous versions of GameMaker Studio 2 you should add the optional argument "legacy", setting it to true as the string format has changed with this version.
ds_map_read(id, str [, legacy]);
| Argument | Description |
|---|---|
| id | The id of the data structure to read the string into |
| str | The string to read |
| legacy (optional) | Can be either true or false or omitted completely. |
N/A
inventory = ds_map_create();
ini_open("map.ini");
var t_string = ini_read_string("Saved", "0", "");
if (t_string != "")
{
ds_map_read(inventory, t_string);
}
ini_close();
The above code creates a new DS map and stores its id index in the variable "inventory". It then opens an ini file and reads a string from that file into the temporary variable "t_string". Finally, it checks to make sure that the string is valid (not the default ini value of "") and if it is it then reads the string into the newly created DS map before closing the ini again.