CvCity::getFirstBuildingOrder(BuildingTypes) const
- Defined in
- CvCity.cpp, line 4524
- Class
- CvCity
- Hook name
CivHooks::CvCity_getFirstBuildingOrder
Hooks
static bool BeforeCvCity_getFirstBuildingOrder(const CvCity* self, BuildingTypes eBuilding, int& result);static void AfterCvCity_getFirstBuildingOrder(const CvCity* self, BuildingTypes eBuilding, int& result);static int ReplaceCvCity_getFirstBuildingOrder(int (*original)(const CvCity*, BuildingTypes), const CvCity* self, BuildingTypes eBuilding);CivRegisterBefore<CivHooks::CvCity_getFirstBuildingOrder>(host, &BeforeCvCity_getFirstBuildingOrder);CivRegisterAfter<CivHooks::CvCity_getFirstBuildingOrder>(host, &AfterCvCity_getFirstBuildingOrder);CivRegisterReplace<CivHooks::CvCity_getFirstBuildingOrder>(host, &ReplaceCvCity_getFirstBuildingOrder);
Code
4524int CvCity::getFirstBuildingOrder(BuildingTypes eBuilding) const4525{4526 VALIDATE_OBJECT4527 int iCount = 0;45284529 const OrderData* pOrderNode = headOrderQueueNode();45304531 while(pOrderNode != NULL)4532 {4533 if(pOrderNode->eOrderType == ORDER_CONSTRUCT)4534 {4535 if(pOrderNode->iData1 == eBuilding)4536 {4537 return iCount;4538 }4539 }45404541 iCount++;45424543 pOrderNode = nextOrderQueueNode(pOrderNode);4544 }45454546 return -1;4547}
Calls
Called by
- CvCity::ChooseFreeCultureBuilding() const
- CvCity::ChooseFreeFoodBuilding() const
- CvCity::IsCanPurchase(bool, bool, UnitTypes, BuildingTypes, ProjectTypes, YieldTypes)
- CvCity::canConstruct(BuildingTypes, bool, bool, bool, bool, CvString *) const
- CvCity::doCheckProduction()
- CvCity::getProductionTurnsLeft(BuildingTypes, int) const
- CvPlayer::processPolicies(PolicyTypes, int)
- CvLuaCity::lGetFirstBuildingOrder(lua_State *)