BWAPI
|
00001 #pragma once 00002 #include <PrecompiledHeader.h> 00003 #include "Defines.h" 00004 #include "Intelligence/EUnitsFilter.h" 00005 #ifdef __ETECH_ESTIMATOR__ 00006 #include "Intelligence/ETechEstimator.h" 00007 #endif 00008 #include "Macro/InformationManager.h" 00009 #include "Regions/MapManager.h" 00010 #include "Intelligence/FirstScoutController.h" 00011 00012 class Intelligence : public CSingleton<Intelligence> 00013 { 00014 friend class CSingleton<Intelligence>; 00015 Intelligence(); 00016 ~Intelligence(); 00017 bool _launchedFirstScoutGoal; 00018 bool _launchedFirstExploreGoal; 00019 std::list<BWTA::BaseLocation*> _enemyBasesOrder; // to be used 00020 public: 00021 std::set<BWTA::Region*> currentlyExploring; 00022 EUnitsFilter* eUnitsFilter; 00023 #ifdef __ETECH_ESTIMATOR__ 00024 ETechEstimator* eTechEstimator; 00025 #endif 00026 int closestOnPath; // HACK TODO remove 00027 MapManager* mapManager; 00028 bool enemyRush; 00029 BWAPI::Race enemyRace; 00030 BWTA::BaseLocation* enemyHome; 00031 std::map<double, BWTA::BaseLocation*> enemyBasesOrder; // to be shared 00032 void update(); 00033 void onUnitCreate(BWAPI::Unit* u); 00034 void onUnitDestroy(BWAPI::Unit* u); 00035 void onUnitShow(BWAPI::Unit* u); 00036 void onUnitHide(BWAPI::Unit* u); 00037 void onUnitMorph(BWAPI::Unit* u); 00038 void onUnitRenegade(BWAPI::Unit* u); 00039 };