BWAPI
Skynet/Skynet/LoadOtherBuilds.cpp
Go to the documentation of this file.
00001 #include "BuildOrderManager.h"
00002 
00003 #include "PlayerTracker.h"
00004 
00005 void BuildOrderManagerClass::LoadOtherBuilds()
00006 {
00007         using namespace BWAPI::Races;
00008         using namespace BWAPI::UnitTypes;
00009         using namespace BWAPI::UpgradeTypes;
00010         using namespace BWAPI::TechTypes;
00011 
00012         int ID_1 = 0;
00013         int ID_2 = 0;
00014         int ID_3 = 0;
00015 
00016         mBuildOrders[BuildOrderID::Unknown] = BuildOrder(BuildOrderID::Unknown, "Unknown");
00017         mBuildOrders[BuildOrderID::Unknown].setArmyBehaviour(ArmyBehaviour::Default);
00018         mBuildOrders[BuildOrderID::Unknown].addSquad(SquadType::DefaultSquad, 1);
00019 
00020         mBuildOrders[BuildOrderID::Unknown].addOrder(Order::TrainWorkers);
00021         mBuildOrders[BuildOrderID::Unknown].addOrder(Order::Scout);
00022         mBuildOrders[BuildOrderID::Unknown].addOrder(Order::SupplyManager);
00023         mBuildOrders[BuildOrderID::Unknown].addOrder(Order::RefineryManager);
00024         mBuildOrders[BuildOrderID::Unknown].addOrder(Order::MacroArmyProduction);
00025         mBuildOrders[BuildOrderID::Unknown].addOrder(Order::CanRemoveSquads);
00026         mBuildOrders[BuildOrderID::Unknown].addOrder(Order::ExpansionManager);
00027         mBuildOrders[BuildOrderID::Unknown].addOrder(Order::MacroProductionFacilities);
00028         mBuildOrders[BuildOrderID::Unknown].addOrder(Order::MacroCanTech);
00029 
00030         if(BWAPI::Broodwar->self()->getRace() == BWAPI::Races::Protoss)
00031         {
00032                 mBuildOrders[BuildOrderID::Unknown].addProduce(BWAPI::UnitTypes::Protoss_Zealot, 2);
00033                 mBuildOrders[BuildOrderID::Unknown].addProduce(BWAPI::UnitTypes::Protoss_Dragoon, 3);
00034                 mBuildOrders[BuildOrderID::Unknown].addProduce(BWAPI::UnitTypes::Protoss_High_Templar, 1);
00035                 mBuildOrders[BuildOrderID::Unknown].addProduce(BWAPI::UnitTypes::Protoss_Arbiter, 1);
00036         }
00037         else if(BWAPI::Broodwar->self()->getRace() == BWAPI::Races::Terran)
00038         {
00039                 mBuildOrders[BuildOrderID::Unknown].addProduce(BWAPI::UnitTypes::Terran_Marine, 5);
00040                 mBuildOrders[BuildOrderID::Unknown].addProduce(BWAPI::UnitTypes::Terran_Medic, 1);
00041                 if(PlayerTracker::Instance().isEnemyRace(BWAPI::Races::Zerg))
00042                         mBuildOrders[BuildOrderID::Unknown].addProduce(BWAPI::UnitTypes::Terran_Firebat, 1);
00043                 mBuildOrders[BuildOrderID::Unknown].addProduce(BWAPI::UnitTypes::Terran_Science_Vessel, 1);
00044         }
00045         else if(BWAPI::Broodwar->self()->getRace() == BWAPI::Races::Zerg)
00046         {
00047                 mBuildOrders[BuildOrderID::Unknown].addProduce(BWAPI::UnitTypes::Zerg_Zergling, 1);
00048         }
00049 
00050         mBuildOrders[BuildOrderID::None] = BuildOrder(BuildOrderID::None, "None");
00051 
00052 //      BuildOrder testBuild(Protoss, BuildOrderID::Test, "Test Build");
00053 // 
00054 //      testBuild.addStartingCondition(Condition(ConditionType::defaultCondition));
00055 // 
00056 //      mBuildOrders[BuildOrderID::Test] = testBuild;
00057 }
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines