CvCity::isProductionLimited() const
- Defined in
- CvCity.cpp, line 3823
- Class
- CvCity
- Hook name
CivHooks::CvCity_isProductionLimited
Hooks
static bool BeforeCvCity_isProductionLimited(const CvCity* self, bool& result);static void AfterCvCity_isProductionLimited(const CvCity* self, bool& result);static bool ReplaceCvCity_isProductionLimited(bool (*original)(const CvCity*), const CvCity* self);CivRegisterBefore<CivHooks::CvCity_isProductionLimited>(host, &BeforeCvCity_isProductionLimited);CivRegisterAfter<CivHooks::CvCity_isProductionLimited>(host, &AfterCvCity_isProductionLimited);CivRegisterReplace<CivHooks::CvCity_isProductionLimited>(host, &ReplaceCvCity_isProductionLimited);
Code
3823bool CvCity::isProductionLimited() const3824{3825 VALIDATE_OBJECT3826 const OrderData* pOrderNode = headOrderQueueNode();38273828 if(pOrderNode != NULL)3829 {3830 switch(pOrderNode->eOrderType)3831 {3832 case ORDER_TRAIN:3833 {3834 CvUnitEntry* pkUnitInfo = GC.getUnitInfo((UnitTypes)(pOrderNode->iData1));3835 if(pkUnitInfo)3836 {3837 return isLimitedUnitClass((UnitClassTypes)(pkUnitInfo->GetUnitClassType()));3838 }3839 }3840 break;38413842 case ORDER_CONSTRUCT:3843 {3844 CvBuildingEntry* pkBuildingInfo = GC.getBuildingInfo((BuildingTypes)pOrderNode->iData1);3845 if(pkBuildingInfo)3846 {3847 return isLimitedWonderClass(pkBuildingInfo->GetBuildingClassInfo());3848 }3849 }3850 break;38513852 case ORDER_CREATE:3853 return isLimitedProject((ProjectTypes)(pOrderNode->iData1));3854 break;38553856 case ORDER_PREPARE:3857 break;38583859 case ORDER_MAINTAIN:3860 break;38613862 default:3863 CvAssertMsg(false, "pOrderNode->eOrderType failed to match a valid option");3864 break;3865 }3866 }38673868 return false;3869}
Calls
- CvBuildingEntry::GetBuildingClassInfo() const
- CvCity::headOrderQueueNode() const
- CvGlobals::getBuildingInfo(BuildingTypes)
- CvGlobals::getUnitInfo(UnitTypes)
- CvUnitEntry::GetUnitClassType() const
- isLimitedProject(ProjectTypes)
- isLimitedUnitClass(UnitClassTypes)
- isLimitedWonderClass(const CvBuildingClassInfo &)