BWAPI
Skynet/Skynet/TrainScarabAction.cpp
Go to the documentation of this file.
00001 #include "TrainScarabAction.h"
00002 
00003 bool TrainScarabAction::update(const Goal &squadGoal, const UnitGroup &squadUnitGroup)
00004 {
00005         if(mUnit->isLoaded())
00006                 return false;
00007 
00008         int maxAmout = 5;
00009         if(BWAPI::Broodwar->self()->getUpgradeLevel(BWAPI::UpgradeTypes::Reaver_Capacity) > 0)
00010                 maxAmout += 5;
00011 
00012         if(mUnit->getTrainingQueue().size() < 5 && mUnit->getScarabCount() + (int)mUnit->getTrainingQueue().size() < maxAmout)
00013         {
00014                 if(BWAPI::Broodwar->self()->minerals() >= BWAPI::UnitTypes::Protoss_Scarab.mineralPrice())
00015                 {
00016                         mUnit->train(BWAPI::UnitTypes::Protoss_Scarab);
00017                         return true;
00018                 }
00019         }
00020 
00021         return false;
00022 }
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines