CvTacticalAI::PlotBarbarianMove(bool)
- Defined in
- CvTacticalAI.cpp, line 2577
- Class
- CvTacticalAI
- Hook name
CivHooks::CvTacticalAI_PlotBarbarianMove
Hooks
static bool BeforeCvTacticalAI_PlotBarbarianMove(CvTacticalAI* self, bool bAggressive);static void AfterCvTacticalAI_PlotBarbarianMove(CvTacticalAI* self, bool bAggressive);static void ReplaceCvTacticalAI_PlotBarbarianMove(void (*original)(CvTacticalAI*, bool), CvTacticalAI* self, bool bAggressive);CivRegisterBefore<CivHooks::CvTacticalAI_PlotBarbarianMove>(host, &BeforeCvTacticalAI_PlotBarbarianMove);CivRegisterAfter<CivHooks::CvTacticalAI_PlotBarbarianMove>(host, &AfterCvTacticalAI_PlotBarbarianMove);CivRegisterReplace<CivHooks::CvTacticalAI_PlotBarbarianMove>(host, &ReplaceCvTacticalAI_PlotBarbarianMove);
Code
2576/// Move barbarians across the map2577void CvTacticalAI::PlotBarbarianMove(bool bAggressive)2578{2579 list<int>::iterator it;2580 CvTacticalUnit unit;25812582 if(m_pPlayer->isBarbarian())2583 {2584 m_CurrentMoveUnits.clear();25852586 // Loop through all recruited units2587 for(it = m_CurrentTurnUnits.begin(); it != m_CurrentTurnUnits.end(); it++)2588 {2589 UnitHandle pUnit = m_pPlayer->getUnit(*it);2590 if(pUnit)2591 {2592 unit.SetID(pUnit->GetID());2593 m_CurrentMoveUnits.push_back(unit);2594 }2595 }25962597 if(m_CurrentMoveUnits.size() > 0)2598 {2599 ExecuteBarbarianMoves(bAggressive);2600 }2601 }2602}
Calls
- CvPlayer::getUnit(int)
- CvPlayer::isBarbarian() const
- CvTacticalAI::ExecuteBarbarianMoves(bool)
- CvTacticalUnit::CvTacticalUnit()
- CvTacticalUnit::SetID(int)
- CvUnit::GetID() const
FObjectHandle::FObjectHandleFObjectHandle::operator boolFObjectHandle::operator->std::list::_Const_iterator::operator!=std::list::_Iterator::_Iteratorstd::list::_Iterator::operator*std::list::_Iterator::operator++std::list::_Iterator::operator=std::list::beginstd::list::endstd::vector::clearstd::vector::push_backstd::vector::size