BWAPI
|
#include <TrainScarabAction.h>
Public Member Functions | |
TrainScarabAction (Unit unit) | |
bool | update (const Goal &squadGoal, const UnitGroup &squadUnitGroup) |
Definition at line 6 of file TrainScarabAction.h.
TrainScarabAction::TrainScarabAction | ( | Unit | unit | ) | [inline] |
Definition at line 9 of file TrainScarabAction.h.
: SingleMicroActionBaseClass(unit) {}
bool TrainScarabAction::update | ( | const Goal & | squadGoal, |
const UnitGroup & | squadUnitGroup | ||
) | [virtual] |
Implements SingleMicroActionBaseClass.
Definition at line 3 of file TrainScarabAction.cpp.
References BWAPI::Broodwar, BWAPI::UnitType::mineralPrice(), SingleMicroActionBaseClass::mUnit, BWAPI::UnitTypes::Protoss_Scarab, and BWAPI::UpgradeTypes::Reaver_Capacity.
{ if(mUnit->isLoaded()) return false; int maxAmout = 5; if(BWAPI::Broodwar->self()->getUpgradeLevel(BWAPI::UpgradeTypes::Reaver_Capacity) > 0) maxAmout += 5; if(mUnit->getTrainingQueue().size() < 5 && mUnit->getScarabCount() + (int)mUnit->getTrainingQueue().size() < maxAmout) { if(BWAPI::Broodwar->self()->minerals() >= BWAPI::UnitTypes::Protoss_Scarab.mineralPrice()) { mUnit->train(BWAPI::UnitTypes::Protoss_Scarab); return true; } } return false; }