CvAIOperationRapidResponse::ArmyMoved(CvArmyAI *)
- Defined in
- CvAIOperation.cpp, line 4950
- Class
- CvAIOperationRapidResponse
- Hook name
CivHooks::CvAIOperationRapidResponse_ArmyMoved- Overrides
- CvAIOperation::ArmyMoved(CvArmyAI *)
Hooks
static bool BeforeCvAIOperationRapidResponse_ArmyMoved(CvAIOperationRapidResponse* self, CvArmyAI* pArmy, bool& result);static void AfterCvAIOperationRapidResponse_ArmyMoved(CvAIOperationRapidResponse* self, CvArmyAI* pArmy, bool& result);static bool ReplaceCvAIOperationRapidResponse_ArmyMoved(bool (*original)(CvAIOperationRapidResponse*, CvArmyAI*), CvAIOperationRapidResponse* self, CvArmyAI* pArmy);CivRegisterBefore<CivHooks::CvAIOperationRapidResponse_ArmyMoved>(host, &BeforeCvAIOperationRapidResponse_ArmyMoved);CivRegisterAfter<CivHooks::CvAIOperationRapidResponse_ArmyMoved>(host, &AfterCvAIOperationRapidResponse_ArmyMoved);CivRegisterReplace<CivHooks::CvAIOperationRapidResponse_ArmyMoved>(host, &ReplaceCvAIOperationRapidResponse_ArmyMoved);
Code
4949/// Every time the army moves on its way to the destination lets double-check that we don't have a better target4950bool CvAIOperationRapidResponse::ArmyMoved(CvArmyAI* pArmy)4951{4952 bool bStateChanged = false;49534954 switch(m_eCurrentState)4955 {4956 case AI_OPERATION_STATE_MOVING_TO_TARGET:4957 {4958 RetargetDefensiveArmy(pArmy);4959 }4960 break;49614962 // In all other cases use base class version4963 case AI_OPERATION_STATE_AT_TARGET:4964 case AI_OPERATION_STATE_RECRUITING_UNITS:4965 case AI_OPERATION_STATE_GATHERING_FORCES:4966 case AI_OPERATION_STATE_ABORTED:4967 return CvAIOperation::ArmyMoved(pArmy);4968 break;4969 };49704971 return bStateChanged;4972}