CvCity::getProductionBuilding() const
- Defined in
- CvCity.cpp, line 4134
- Class
- CvCity
- Hook name
CivHooks::CvCity_getProductionBuilding
Hooks
static bool BeforeCvCity_getProductionBuilding(const CvCity* self, BuildingTypes& result);static void AfterCvCity_getProductionBuilding(const CvCity* self, BuildingTypes& result);static BuildingTypes ReplaceCvCity_getProductionBuilding(BuildingTypes (*original)(const CvCity*), const CvCity* self);CivRegisterBefore<CivHooks::CvCity_getProductionBuilding>(host, &BeforeCvCity_getProductionBuilding);CivRegisterAfter<CivHooks::CvCity_getProductionBuilding>(host, &AfterCvCity_getProductionBuilding);CivRegisterReplace<CivHooks::CvCity_getProductionBuilding>(host, &ReplaceCvCity_getProductionBuilding);
Code
4134BuildingTypes CvCity::getProductionBuilding() const4135{4136 VALIDATE_OBJECT4137 const OrderData* pOrderNode = headOrderQueueNode();41384139 if(pOrderNode != NULL)4140 {4141 switch(pOrderNode->eOrderType)4142 {4143 case ORDER_TRAIN:4144 break;41454146 case ORDER_CONSTRUCT:4147 return ((BuildingTypes)(pOrderNode->iData1));4148 break;41494150 case ORDER_CREATE:4151 case ORDER_PREPARE:4152 case ORDER_MAINTAIN:4153 break;41544155 default:4156 CvAssertMsg(false, "pOrderNode->eOrderType failed to match a valid option");4157 break;4158 }4159 }41604161 return NO_BUILDING;4162}
Calls
Called by
- CvCity::changeProduction(int)
- CvCity::changeProductionTimes100(int)
- CvCity::doDecay()
- CvCity::setProduction(int)
- CvCity::setProductionTimes100(int)
- CvCity::setupWonderGraphics()
- CvCityAI::AI_chooseProduction(bool)
- CvCitySpecializationAI::FindBestWonderCity() const
- CvCitySpecializationAI::SelectSpecializations()
- CvPlayerEspionage::UncoverIntrigue(uint)
- CvHomelandAI::ExecuteEngineerMoves()
- CvPlayer::disband(CvCity *)
- CvTradeAI::PrioritizeTradeRoutes(TradeConnectionList &)
- CvLuaCity::lGetProductionBuilding(lua_State *)