#include "IDAReplayObserver.h" #include "Util.h" void IDAReplayObserver::setUnits() { m_allUnits.clear(); for (auto & unit : Observation()->GetUnits()) { m_allUnits.push_back(ReplayUnit(unit, *this)); } } IDAReplayObserver::IDAReplayObserver(): sc2::ReplayObserver() { } void IDAReplayObserver::OnGameStart() { setUnits(); } void IDAReplayObserver::OnStep() { setUnits(); } void IDAReplayObserver::OnGameEnd() { } void IDAReplayObserver::OnUnitDestroyed(const sc2::Unit* unit) { ReplayUnit unitInformation = ReplayUnit(unit, *this); OnUnitInfomationDestroyed(&unitInformation); } void IDAReplayObserver::OnUnitInfomationDestroyed(const ReplayUnit *) { } ReplayUnit IDAReplayObserver::GetUnit(const CCUnitID tag) const { return ReplayUnit(Observation()->GetUnit(tag), *(IDAReplayObserver *)this); } const std::vector<ReplayUnit>& IDAReplayObserver::GetAllUnits() const { return m_allUnits; }