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}