SC2API
An API for AI for StarCraft II
Classes | Public Member Functions | List of all members
sc2::UnitQueryInterface Class Referenceabstract

#include <sc2_interfaces.h>

Classes

struct  PathingQuery
 Issues multiple pathing queries. Same as PathingDistance(Point2D, Point2D) More...
 
struct  PlacementQuery
 Issues multiple building placement queries. Same as Placement(AbilityID, Point2D, uint64_t) More...
 

Public Member Functions

virtual AvailableAbilities GetAbilitiesForUnit (uint64_t tag)=0
 Returns a list of abilities represented as a uint32_t see the ABILITY_ID enum for their corresponding, named, representations.
 
virtual std::vector< AvailableAbilitiesGetAbilitiesForUnits (const std::vector< uint64_t > &tags)=0
 Issues multiple available abilities queries. Same as GetAbilitiesForUnit(uint64_t).
 
virtual float PathingDistance (const Point2D &start, const Point2D &end)=0
 Returns pathing distance between two locations.
 
virtual float PathingDistance (const uint64_t &start_unit_tag, const Point2D &end)=0
 Returns pathing distance between a unit and a target location. Takes into account unit movement properties (eg. Flying).
 
virtual void PathingDistance (const std::vector< PathingQuery > &queries, std::vector< float > &distances)=0
 
virtual void Placement (const AbilityID &ability, const Point2D &target_pos, uint64_t placing_unit_tag_=0LL)=0
 
virtual void Placement (const std::vector< PlacementQuery > &queries, std::vector< bool > &results)=0
 

Detailed Description

The UnitQueryInterface reflects what abilities are available for a given unit or units. Guaranteed to be valid when the OnStep event is called.

Performance note:

Member Function Documentation

◆ Placement()

virtual void sc2::UnitQueryInterface::Placement ( const AbilityID ability,
const Point2D target_pos,
uint64_t  placing_unit_tag_ = 0LL 
)
pure virtual

Returns whether a building can be placed at a location. The placing unit field is optional. This is only used for cases where the placing unit plays a role in the placement grid test. (eg. A flying barracks building an add-on requires room for both the barracks and add-on)


The documentation for this class was generated from the following file: