With this function you can check to see if a data structure of the given type exists. You supply the DS reference (as held in a variable) and the DS type, which can be any of the constants listed below, and the function will return true if the data structure exists and false otherwise.
DS Type Constant | |
---|---|
Constant | Description |
ds_type_map | A map data structure |
ds_type_list | A list data structure |
ds_type_stack | A stack data structure |
ds_type_grid | A grid data structure |
ds_type_queue | A queue data structure |
ds_type_priority | A priority data structure |
NOTE You cannot use this function to check the type of a data structure, as the same index number may be used by multiple data structures of differing types.
ds_exists(ind, type);
Argument | Type | Description |
---|---|---|
ind | Any DS Reference | The variable index to check for the data structure |
type | DS Type Constant | The type of data structure to check for (see the list of constants above) |
if !ds_exists(ai_grid, ds_type_grid)
{
ai_grid = ds_grid_create(room_width / 32, room_height / 32);
}
The above code checks the (previously initialised) variable "ai_grid" to see if it indexes a DS grid type data structure, and if it does not then it creates one and stores its index in the variable.