CvTacticalAI::PlotEscortNavalOperationMoves(CvArmyAI *)
- Defined in
- CvTacticalAI.cpp, line 5800
- Class
- CvTacticalAI
- Hook name
CivHooks::CvTacticalAI_PlotEscortNavalOperationMoves
Hooks
static bool BeforeCvTacticalAI_PlotEscortNavalOperationMoves(CvTacticalAI* self, CvArmyAI* pArmy, bool& result);static void AfterCvTacticalAI_PlotEscortNavalOperationMoves(CvTacticalAI* self, CvArmyAI* pArmy, bool& result);static bool ReplaceCvTacticalAI_PlotEscortNavalOperationMoves(bool (*original)(CvTacticalAI*, CvArmyAI*), CvTacticalAI* self, CvArmyAI* pArmy);CivRegisterBefore<CivHooks::CvTacticalAI_PlotEscortNavalOperationMoves>(host, &BeforeCvTacticalAI_PlotEscortNavalOperationMoves);CivRegisterAfter<CivHooks::CvTacticalAI_PlotEscortNavalOperationMoves>(host, &AfterCvTacticalAI_PlotEscortNavalOperationMoves);CivRegisterReplace<CivHooks::CvTacticalAI_PlotEscortNavalOperationMoves>(host, &ReplaceCvTacticalAI_PlotEscortNavalOperationMoves);
Code
5799/// Help protect a nearby naval operation (returns true if found one to support)5800bool CvTacticalAI::PlotEscortNavalOperationMoves(CvArmyAI* pArmy)5801{5802 CvPlot* pTarget = NULL;5803 int iOperationID;5804 int iArmyID;5805 CvArmyAI* pArmyToEscort;58065807 // Only one colonization operation at a time, so don't have to search for more than one5808 if(m_pPlayer->haveAIOperationOfType(AI_OPERATION_COLONIZE, &iOperationID))5809 {5810 CvAIOperation* pOperation = m_pPlayer->getAIOperation(iOperationID);5811 iArmyID = pOperation->GetFirstArmyID();5812 if(iArmyID != -1)5813 {5814 pArmyToEscort = m_pPlayer->getArmyAI(iArmyID);5815 if(pArmyToEscort)5816 {5817 pTarget = pArmyToEscort->GetCenterOfMass(DOMAIN_SEA);5818 }5819 }5820 }58215822 if(pTarget)5823 {5824 ExecuteFleetMoveToTarget(pArmy, pTarget);5825 return true;5826 }58275828 return false;5829}