With this function you can recreate a saved ds_queue (one that has previously been written as a string using ds_queue_write). You must first create a new ds_queue to read the string into, and if the ds_queue already exists and has information stored in it, then this will be cleared before reading. This function is of vital importance when creating save/load mechanisms for your game. Note that if the data structure was created with previous versions of GameMaker you should add the optional argument "legacy", setting it to true as the string format has changed with this version.


ds_queue_read(id, str [, legacy]);

Argument Description
id The id of the data structure to read into.
str The string to read from.
legacy (optional) Can be either true or false or omitted completely.




queue = ds_queue_create();
var str = ini_read_string("Queues", "0", "");
if str != ""
    ds_queue_read(queue, str);

The above code creates a queue and stores the index in the variable "queue". It then opens an ini file and reads a string from that, checking to make sure that the string is not returned as empty first. This string is then read into the newly created ds_queue.