Bazaar developer reference

CvMilitaryAI::GetCityStateAttackOperation(PlayerTypes)

Defined in
CvMilitaryAI.cpp, line 813
Class
CvMilitaryAI
Hook name
CivHooks::CvMilitaryAI_GetCityStateAttackOperation

Hooks

static bool BeforeCvMilitaryAI_GetCityStateAttackOperation(CvMilitaryAI* self, PlayerTypes eEnemy, CvAIOperation*& result);static void AfterCvMilitaryAI_GetCityStateAttackOperation(CvMilitaryAI* self, PlayerTypes eEnemy, CvAIOperation*& result);static CvAIOperation* ReplaceCvMilitaryAI_GetCityStateAttackOperation(CvAIOperation* (*original)(CvMilitaryAI*, PlayerTypes), CvMilitaryAI* self, PlayerTypes eEnemy);CivRegisterBefore<CivHooks::CvMilitaryAI_GetCityStateAttackOperation>(host, &BeforeCvMilitaryAI_GetCityStateAttackOperation);CivRegisterAfter<CivHooks::CvMilitaryAI_GetCityStateAttackOperation>(host, &AfterCvMilitaryAI_GetCityStateAttackOperation);CivRegisterReplace<CivHooks::CvMilitaryAI_GetCityStateAttackOperation>(host, &ReplaceCvMilitaryAI_GetCityStateAttackOperation);

Code

812/// Get a pointer to the basic attack against a target813CvAIOperation* CvMilitaryAI::GetCityStateAttackOperation(PlayerTypes eEnemy)814{815	int iOperationID;816	bool bHasOperationUnderway = m_pPlayer->haveAIOperationOfType(AI_OPERATION_CITY_STATE_ATTACK, &iOperationID, eEnemy);817818	if(bHasOperationUnderway)819	{820		return m_pPlayer->getAIOperation(iOperationID);821	}822	else823	{824		bool bHasOperationOfType = m_pPlayer->haveAIOperationOfType(AI_OPERATION_CITY_STATE_NAVAL_ATTACK, &iOperationID, eEnemy);825826		if(bHasOperationOfType)827		{828			return m_pPlayer->getAIOperation(iOperationID);829		}830	}831832	return NULL;833}

Calls

Called by