CvAIOperationRapidResponse::ArmyInPosition(CvArmyAI *)
- Defined in
- CvAIOperation.cpp, line 4920
- Class
- CvAIOperationRapidResponse
- Hook name
CivHooks::CvAIOperationRapidResponse_ArmyInPosition- Overrides
- CvAIOperation::ArmyInPosition(CvArmyAI *)
Hooks
static bool BeforeCvAIOperationRapidResponse_ArmyInPosition(CvAIOperationRapidResponse* self, CvArmyAI* pArmy, bool& result);static void AfterCvAIOperationRapidResponse_ArmyInPosition(CvAIOperationRapidResponse* self, CvArmyAI* pArmy, bool& result);static bool ReplaceCvAIOperationRapidResponse_ArmyInPosition(bool (*original)(CvAIOperationRapidResponse*, CvArmyAI*), CvAIOperationRapidResponse* self, CvArmyAI* pArmy);CivRegisterBefore<CivHooks::CvAIOperationRapidResponse_ArmyInPosition>(host, &BeforeCvAIOperationRapidResponse_ArmyInPosition);CivRegisterAfter<CivHooks::CvAIOperationRapidResponse_ArmyInPosition>(host, &AfterCvAIOperationRapidResponse_ArmyInPosition);CivRegisterReplace<CivHooks::CvAIOperationRapidResponse_ArmyInPosition>(host, &ReplaceCvAIOperationRapidResponse_ArmyInPosition);
Code
4919/// If have gathered forces, check to see what the best blocking position is.4920bool CvAIOperationRapidResponse::ArmyInPosition(CvArmyAI* pArmy)4921{4922 bool bStateChanged = false;49234924 switch(m_eCurrentState)4925 {4926 // See if reached our target4927 case AI_OPERATION_STATE_MOVING_TO_TARGET:4928 {4929 // For now never end, even at target4930 bStateChanged = false;49314932 // ... but we might want to move to a greater threat4933 RetargetDefensiveArmy(pArmy);4934 }4935 break;49364937 // In all other cases use base class version4938 case AI_OPERATION_STATE_GATHERING_FORCES:4939 case AI_OPERATION_STATE_ABORTED:4940 case AI_OPERATION_STATE_RECRUITING_UNITS:4941 case AI_OPERATION_STATE_AT_TARGET:4942 bStateChanged = CvAIOperation::ArmyInPosition(pArmy);4943 break;4944 };49454946 return bStateChanged;4947}