BWAPI
|
00001 #pragma once 00002 #include "Macro/Arbitrator.h" 00003 #include <BWAPI.h> 00004 #include <BWTA.h> 00005 #include "Intelligence/EUnitsFilter.h" 00006 #include "Micro/UnitsGroup.h" 00007 00008 class GoalManager; 00009 00010 class FirstScoutController : public Arbitrator::Controller<BWAPI::Unit*,double> 00011 { 00012 00013 public: 00014 FirstScoutController(); 00015 ~FirstScoutController(); 00016 std::set<Unit*> _biddedOn; 00017 std::list<UnitsGroup> _unitsGroups; 00018 00019 void update(); 00020 virtual std::string getName() const; 00021 virtual void onOffer(std::set<BWAPI::Unit*> units); 00022 virtual void onRevoke(BWAPI::Unit* unit, double bid); 00023 00024 void onUnitShow(BWAPI::Unit* unit); 00025 void onUnitDestroy(BWAPI::Unit* unit); 00026 00027 void requestScout(double bid); 00028 void findEnemy(); 00029 void harassWorkers(); 00030 void checkEmptyXP(); 00031 void check(BWAPI::TilePosition tp); 00032 TilePosition enemyStartLocation; 00033 std::set<TilePosition> enemyExpandLocations; 00034 bool enemyFound; 00035 std::list<TilePosition>::const_iterator lastScoutedLocation; 00036 };