BWAPI
|
00001 #ifndef SCOUTTACTICSMODEL_H 00002 #define SCOUTTACTICSMODEL_H 00003 #include <BWAPI.h> 00004 #include "ScoutTactics.h" 00005 #include "Squad.h" 00006 #include <stack> 00007 #include <set> 00008 #include <map> 00009 #include <vector> 00010 #include <algorithm> 00011 00012 00013 using namespace BWAPI; 00014 00015 class AgentPool; 00016 00017 class ScoutTacticsModel { 00018 public: 00019 ScoutTacticsModel::ScoutTacticsModel(Unit* m, int INITIAL_TACTIC, Squad* r, AgentPool* p); 00020 void ScoutTacticsModel::switchTactic(int NEW_TACTIC); 00021 Unit* ScoutTacticsModel::getUnit(); 00022 bool ScoutTacticsModel::executeTactics(); 00023 void ScoutTacticsModel::initialize(); 00024 Squad* ScoutTacticsModel::getReturnLocation(); 00025 void ScoutTacticsModel::scoutMove(Position p); 00026 00027 // tactics 00028 bool ScoutTacticsModel::executeBaseTourTactic(); 00029 00030 00031 private: 00032 Unit* element; 00033 Unit* targetOfInterest; 00034 Squad* returnLocation; 00035 int CUR_TACTIC; 00036 std::vector<BWAPI::Position> startLocations; 00037 AgentPool* agentPool; 00038 00039 // tactics 00040 // base tour tactic 00041 BWAPI::Position currentTarget; 00042 BWAPI::Position closestBase; 00043 bool stop; 00044 00045 }; 00046 #endif