BWAPI
|
#include <UnitsGroup.h>
Public Member Functions | |
UnitsGroup () | |
Basic. | |
virtual | ~UnitsGroup () |
void | update () |
void | display () |
void | move (BWAPI::Position &p) |
Group interaction/orders. | |
virtual void | formation (pFormation f) |
void | switchMode (unit_mode um) |
void | idle () |
void | dispatchCompleteUnit (pBayesianUnit bu) |
Units pool management. | |
void | giveUpControl (BWAPI::Unit *u) |
virtual void | onUnitDestroy (BWAPI::Unit *u) |
AIModule interface. | |
virtual void | onUnitShow (BWAPI::Unit *u) |
virtual void | onUnitHide (BWAPI::Unit *u) |
void | updateArrivingUnits () |
Updaters of info. | |
void | chooseLeadingUnit () |
void | updateCenter () |
void | updateOurStats () |
void | updateEnemiesCenter () |
virtual BWAPI::Position | getCenter () const |
Getters. | |
double | getDistance (BWAPI::Unit *u) const |
double | getDistance (BWAPI::Position p) const |
int | getTotalHP () const |
std::vector< pBayesianUnit > * | getUnits () |
const BayesianUnit & | operator[] (ptrdiff_t i) |
void | templarMergingStuff () |
Templas merging. | |
void | signalMerge (BWAPI::Unit *u) |
void | selectedUnits (std::set< pBayesianUnit > &u) |
Public Attributes | |
double | force |
Units tools / units intercommunication. | |
bool | enemiesDefinedByGoal |
std::list< pBayesianUnit > | arrivingUnits |
std::vector< BWAPI::Position > | ppath |
UnitDmgBimap | unitDamages |
pBayesianUnit | leadingUnit |
BWAPI::Unit * | defaultTargetEnemy |
BWAPI::Position | groupTargetPosition |
double | distToTarget |
BWTA::Chokepoint * | nearestChoke |
double | distToNearestChoke |
Vec | centerSpeed |
std::map< BWAPI::UnitSizeType, int > | sizes |
bool | isFighting |
bool | suicide |
bool | readyToAttack |
int | nonFlyers |
Group recap variables. | |
unit_mode | groupMode |
BWAPI::Position | center |
int | groupAltitude |
double | stdDevRadius |
double | maxRadius |
BWAPI::Position | enemiesCenter |
Enemies info. | |
bool | enemyStatic |
int | enemiesAltitude |
std::map< BWAPI::Unit *, BWAPI::Position > | enemies |
Basic.
UnitsGroup::~UnitsGroup | ( | ) | [virtual] |
void UnitsGroup::chooseLeadingUnit | ( | ) | [inline] |
take the closest unit to the target which has the closest attack range
void UnitsGroup::dispatchCompleteUnit | ( | pBayesianUnit | bu | ) |
Units pool management.
void UnitsGroup::display | ( | ) |
void UnitsGroup::formation | ( | pFormation | f | ) | [virtual] |
Position UnitsGroup::getCenter | ( | ) | const [virtual] |
Getters.
double UnitsGroup::getDistance | ( | BWAPI::Unit * | u | ) | const [inline] |
double UnitsGroup::getDistance | ( | BWAPI::Position | p | ) | const |
int UnitsGroup::getTotalHP | ( | ) | const |
std::vector< pBayesianUnit > * UnitsGroup::getUnits | ( | ) |
void UnitsGroup::giveUpControl | ( | BWAPI::Unit * | u | ) |
void UnitsGroup::idle | ( | ) |
void UnitsGroup::move | ( | BWAPI::Position & | p | ) |
Group interaction/orders.
void UnitsGroup::onUnitDestroy | ( | BWAPI::Unit * | u | ) | [virtual] |
AIModule interface.
void UnitsGroup::onUnitHide | ( | BWAPI::Unit * | u | ) | [virtual] |
void UnitsGroup::onUnitShow | ( | BWAPI::Unit * | u | ) | [virtual] |
const BayesianUnit & UnitsGroup::operator[] | ( | ptrdiff_t | i | ) |
void UnitsGroup::selectedUnits | ( | std::set< pBayesianUnit > & | u | ) |
void UnitsGroup::signalMerge | ( | BWAPI::Unit * | u | ) |
void UnitsGroup::switchMode | ( | unit_mode | um | ) |
void UnitsGroup::templarMergingStuff | ( | ) | [inline] |
Templas merging.
void UnitsGroup::update | ( | ) | [virtual] |
Update arriving units
Update the center of the group
Choose a non flying leadingUnit
Update nearby enemy units from eUnitsFilter (SLOW)
Update enemiesCenter / enemiesAltitude
All the things to do when we have to fight
We fight, we'll see later for the goals, BayesianUnits switchMode automatically if enemies is not empty()
find where to place our units around them
ATTACK!!
Update BayesianUnits
Merge Templars if needed
Reimplemented from BasicUnitsGroup.
void UnitsGroup::updateArrivingUnits | ( | ) | [inline] |
Updaters of info.
void UnitsGroup::updateCenter | ( | ) | [inline] |
update the distToTarget with the new center by using precomputer pathfinding distances
void UnitsGroup::updateEnemiesCenter | ( | ) | [inline] |
void UnitsGroup::updateOurStats | ( | ) | [inline] |
Hack/Experimental++
std::list<pBayesianUnit> UnitsGroup::arrivingUnits |
BWAPI::Position UnitsGroup::center |
BWAPI::Unit* UnitsGroup::defaultTargetEnemy |
double UnitsGroup::distToTarget |
std::map<BWAPI::Unit*, BWAPI::Position> UnitsGroup::enemies |
BWAPI::Position UnitsGroup::enemiesCenter |
Enemies info.
double UnitsGroup::force |
Units tools / units intercommunication.
BWAPI::Position UnitsGroup::groupTargetPosition |
double UnitsGroup::maxRadius |
BWTA::Chokepoint* UnitsGroup::nearestChoke |
Group recap variables.
std::vector<BWAPI::Position> UnitsGroup::ppath |
std::map<BWAPI::UnitSizeType, int> UnitsGroup::sizes |
double UnitsGroup::stdDevRadius |
bool UnitsGroup::suicide |