This function checks if a data structure of the given type with the given index 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. If it doesn't, it creates one and stores its handle in the variable.