BWAPI
|
#include <UnitPredictor.h>
Public Member Functions | |
UnitPredictorClass () | |
Unit | createPrediction (Position pos, BWAPI::UnitType type, int startTime) |
void | savePrediction (Unit unit) |
void | deletePrediction (Unit unit) |
Unit | onNewUnit (BWAPI::Unit *newUnit) |
Private Attributes | |
UnitGroup | mUnits |
Definition at line 9 of file UnitPredictor.h.
Definition at line 5 of file UnitPredictor.cpp.
{ }
Unit UnitPredictorClass::createPrediction | ( | Position | pos, |
BWAPI::UnitType | type, | ||
int | startTime | ||
) |
Definition at line 9 of file UnitPredictor.cpp.
void UnitPredictorClass::deletePrediction | ( | Unit | unit | ) |
Definition at line 20 of file UnitPredictor.cpp.
References UnitGroup::erase(), Singleton< T >::Instance(), mUnits, and AccessTypeDef::Prediction.
{ if(unit->accessibility() == AccessType::Prediction) UnitTracker::Instance().onDestroy(unit); mUnits.erase(unit); }
Unit UnitPredictorClass::onNewUnit | ( | BWAPI::Unit * | newUnit | ) |
Definition at line 28 of file UnitPredictor.cpp.
References mUnits, StaticUnits::nullunit, and TILE_SIZE.
{ for each(Unit unit in mUnits) { if(unit->getType() == newUnit->getType() && unit->getPlayer() == newUnit->getPlayer()) { if(unit->getTilePosition() == newUnit->getTilePosition() || newUnit->getPosition().getDistance(unit->getPosition()) <= TILE_SIZE * 6) { unit->promote(newUnit); return unit; } } } return StaticUnits::nullunit; }
void UnitPredictorClass::savePrediction | ( | Unit | unit | ) |
Definition at line 14 of file UnitPredictor.cpp.
References UnitGroup::insert(), Singleton< T >::Instance(), and mUnits.
{ mUnits.insert(unit); UnitTracker::Instance().onDiscover(unit); }
UnitGroup UnitPredictorClass::mUnits [private] |
Definition at line 22 of file UnitPredictor.h.
Referenced by deletePrediction(), onNewUnit(), and savePrediction().