Bazaar developer reference

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}

Calls