CvCity::getProductionNeeded() const
- Defined in
- CvCity.cpp, line 4713
- Class
- CvCity
- Hook name
CivHooks::CvCity_getProductionNeeded
Hooks
static bool BeforeCvCity_getProductionNeeded(const CvCity* self, int& result);static void AfterCvCity_getProductionNeeded(const CvCity* self, int& result);static int ReplaceCvCity_getProductionNeeded(int (*original)(const CvCity*), const CvCity* self);CivRegisterBefore<CivHooks::CvCity_getProductionNeeded>(host, &BeforeCvCity_getProductionNeeded);CivRegisterAfter<CivHooks::CvCity_getProductionNeeded>(host, &AfterCvCity_getProductionNeeded);CivRegisterReplace<CivHooks::CvCity_getProductionNeeded>(host, &ReplaceCvCity_getProductionNeeded);
Code
4713int CvCity::getProductionNeeded() const4714{4715 VALIDATE_OBJECT4716 const OrderData* pOrderNode = headOrderQueueNode();47174718 if(pOrderNode != NULL)4719 {4720 switch(pOrderNode->eOrderType)4721 {4722 case ORDER_TRAIN:4723 return getProductionNeeded((UnitTypes)(pOrderNode->iData1));4724 break;47254726 case ORDER_CONSTRUCT:4727 return getProductionNeeded((BuildingTypes)(pOrderNode->iData1));4728 break;47294730 case ORDER_CREATE:4731 return getProductionNeeded((ProjectTypes)(pOrderNode->iData1));4732 break;47334734 case ORDER_PREPARE:4735 return getProductionNeeded((SpecialistTypes)(pOrderNode->iData1));4736 break;47374738 case ORDER_MAINTAIN:4739#if defined(MOD_PROCESS_STOCKPILE)4740 return getProductionNeeded((ProcessTypes)(pOrderNode->iData1));4741#endif4742 break;47434744 default:4745 CvAssertMsg(false, "pOrderNode->eOrderType failed to match a valid option");4746 break;4747 }4748 }47494750 return INT_MAX;4751}
Calls
Called by
- CvCity::canHurry(HurryTypes, bool) const
- CvCity::doProduction(bool)
- CvCity::getCurrentProductionDifference(bool, bool) const
- CvCity::getCurrentProductionDifferenceTimes100(bool, bool) const
- CvCity::getRawProductionDifference(bool, bool) const
- CvCity::getRawProductionDifferenceTimes100(bool, bool) const
- CvCity::hurryGold(HurryTypes) const
- CvCity::productionLeft() const
- CvEconomicAI::DoHurry()
- CvUnit::DoRushBuilding()
- CvLuaCity::lGetProductionNeeded(lua_State *)