BWAPI
quorum/ExampleAIModule/Squad.h
Go to the documentation of this file.
00001 #ifndef SQUAD_H
00002 #define SQUAD_H
00003 #include <iostream>
00004 #include <vector>
00005 #include <BWAPI.h>
00006 
00007 class TacticsImplementation;
00008 
00009 using namespace BWAPI;
00010 class Squad {
00011 public:
00012         Squad::Squad(std::string name, int s);
00013         Squad::Squad(std::string name, std::vector<Unit*> units, int s);
00014         void Squad::addUnit(Unit* u);
00015                 void Squad::forceUnit(Unit* u);
00016         std::vector<Unit*> Squad::getUnits();
00017         std::string name();
00018         Unit* Squad::getUnitAt(int x);
00019         void Squad::removeUnitAt(unsigned int u);
00020         void Squad::removeUnit(Unit* u);
00021         bool Squad::containsUnit(Unit* u);
00022         std::vector<Unit*> Squad::getLivingUnits();
00023         void Squad::alertTacticsImplementation(Unit* u);
00024         TacticsImplementation* Squad::getTacticsImplementation();
00025         void Squad::attachTacticsImplementation(TacticsImplementation* t);
00026 
00027         Position Squad::getMostCentralElement(Unit* u);
00028         Position Squad::getMostCentralElement();
00029         bool Squad::canMaintainCentralPosition(Unit* u);
00030         bool Squad::allMembersInPosition();
00031 
00032 private:
00033         std::string squadName;
00034         std::vector<Unit*> members;
00035         TacticsImplementation* tactics;
00036         int squadCohesion;
00037 
00038 };
00039 #endif
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Defines