ds_exists

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.

 

Syntax:

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)

 

Returns:

Boolean

 

Example:

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.