CvCityStrategyAI::GetDeficientYield()
- Defined in
- CvCityStrategyAI.cpp, line 642
- Class
- CvCityStrategyAI
- Hook name
CivHooks::CvCityStrategyAI_GetDeficientYield
Hooks
static bool BeforeCvCityStrategyAI_GetDeficientYield(CvCityStrategyAI* self, YieldTypes& result);static void AfterCvCityStrategyAI_GetDeficientYield(CvCityStrategyAI* self, YieldTypes& result);static YieldTypes ReplaceCvCityStrategyAI_GetDeficientYield(YieldTypes (*original)(CvCityStrategyAI*), CvCityStrategyAI* self);CivRegisterBefore<CivHooks::CvCityStrategyAI_GetDeficientYield>(host, &BeforeCvCityStrategyAI_GetDeficientYield);CivRegisterAfter<CivHooks::CvCityStrategyAI_GetDeficientYield>(host, &AfterCvCityStrategyAI_GetDeficientYield);CivRegisterReplace<CivHooks::CvCityStrategyAI_GetDeficientYield>(host, &ReplaceCvCityStrategyAI_GetDeficientYield);
Code
641// Determines what yield type is in a deficient state. If none, then NO_YIELD is returned642YieldTypes CvCityStrategyAI::GetDeficientYield(void)643{644 if(IsYieldDeficient(YIELD_FOOD))645 {646 return YIELD_FOOD;647 }648 else if(IsYieldDeficient(YIELD_PRODUCTION))649 {650 return YIELD_PRODUCTION;651 }652 else653 {654 for(uint ui = 0; ui < NUM_YIELD_TYPES; ui++)655 {656 YieldTypes yield = (YieldTypes)ui;657 if(IsYieldDeficient(yield))658 {659 return yield;660 }661 }662 }663664 return NO_YIELD;665}