This function returns the previous key stored in the ds_map before the one specified in the function. This can be useful if your have to iterate through the ds_map looking for something, but should be avoided if possible as it can be slow. If no such key exists then the function will return <undefined>. You should always check this using the is_undefined() function.
ds_map_find_previous(id, key);
参数 | 描述 |
---|---|
id | The id of the map to use. |
key | The key to find the previous one to. |
Real, string or undefined
var size, key, i;
size = ds_map_size(inventory) - 1;
key = ds_map_find_last(inventory);
for (i = size; i > 0; i --;)
{
if key != "gold" key = ds_map_find_previous(inventory, key) else break;
}
The above code creates some temporary variables and then gets the ds_map size and finds the last key as stored by the computer in the map. It then uses a for loop to iterate back through the ds_map looking for the key value "gold". If it finds it, it breaks out the loop.