BWAPI
SPAR/AIModule/SparAIModule/PerceptualState/Unit/EnemyUnit.h
Go to the documentation of this file.
00001 #pragma once
00002 #include "UnitLocationData.h"
00003 
00007 class EnemyUnit : public ForeignUnit
00008 {
00009 public:
00010   EnemyUnit(BWAPI::Unit* unit, PrimitiveLocation* location)
00011     : ForeignUnit(unit, location)
00012   {
00013     assert(unit->getPlayer()->isEnemy(BWAPI::Broodwar->self()));
00014   }
00015 
00016   friend std::ostream& operator<<(std::ostream& out, const EnemyUnit& enemyUnit)
00017   {
00018     if (enemyUnit.isAccessible())
00019     {
00020       BWAPI::Unit* unit = enemyUnit.getUnit();
00021       out << "Enemy unit (0x" << std::nouppercase << std::hex << unit << std::dec << ") " << unit->getType().getName() << ", hit points " << unit->getHitPoints();
00022     }
00023     else
00024     {
00025       const EnemyUnit::SavedState& state = enemyUnit.getLastKnownState();
00026       out << "Enemy saved unit (0x" << std::nouppercase << std::hex << enemyUnit.m_unit << std::dec << ") " << state.getType().getName() << ", hit points " << state.getHitPoints();
00027     }
00028     return out;
00029   }
00030 };
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines