Hooks
static bool BeforeCvTeam_changeFeatureYieldChange(CvTeam* self, FeatureTypes eIndex1, YieldTypes eIndex2, int iChange);static void AfterCvTeam_changeFeatureYieldChange(CvTeam* self, FeatureTypes eIndex1, YieldTypes eIndex2, int iChange);static void ReplaceCvTeam_changeFeatureYieldChange(void (*original)(CvTeam*, FeatureTypes, YieldTypes, int), CvTeam* self, FeatureTypes eIndex1, YieldTypes eIndex2, int iChange);CivRegisterBefore<CivHooks::CvTeam_changeFeatureYieldChange>(host, &BeforeCvTeam_changeFeatureYieldChange);CivRegisterAfter<CivHooks::CvTeam_changeFeatureYieldChange>(host, &AfterCvTeam_changeFeatureYieldChange);CivRegisterReplace<CivHooks::CvTeam_changeFeatureYieldChange>(host, &ReplaceCvTeam_changeFeatureYieldChange);
Code
6141void CvTeam::changeFeatureYieldChange(FeatureTypes eIndex1, YieldTypes eIndex2, int iChange)6142{6143 CvAssertMsg(eIndex1 >= 0, "eIndex1 is expected to be non-negative (invalid Index)");6144 CvAssertMsg(eIndex1 < GC.getNumFeatureInfos(), "eIndex1 is expected to be within maximum bounds (invalid Index)");6145 CvAssertMsg(eIndex2 >= 0, "eIndex2 is expected to be non-negative (invalid Index)");6146 CvAssertMsg(eIndex2 < NUM_YIELD_TYPES, "eIndex2 is expected to be within maximum bounds (invalid Index)");61476148 if(iChange != 0)6149 {6150 m_ppaaiFeatureYieldChange[eIndex1][eIndex2] = (m_ppaaiFeatureYieldChange[eIndex1][eIndex2] + iChange);6151 CvAssert(getFeatureYieldChange(eIndex1, eIndex2) >= 0);61526153 updateYield();6154 }6155}