Bazaar developer reference

CvCity::getProductionName() const

Defined in
CvCity.cpp, line 4259
Class
CvCity
Hook name
CivHooks::CvCity_getProductionName

Hooks

static bool BeforeCvCity_getProductionName(const CvCity* self, const char*& result);static void AfterCvCity_getProductionName(const CvCity* self, const char*& result);static const char* ReplaceCvCity_getProductionName(const char* (*original)(const CvCity*), const CvCity* self);CivRegisterBefore<CivHooks::CvCity_getProductionName>(host, &BeforeCvCity_getProductionName);CivRegisterAfter<CivHooks::CvCity_getProductionName>(host, &AfterCvCity_getProductionName);CivRegisterReplace<CivHooks::CvCity_getProductionName>(host, &ReplaceCvCity_getProductionName);

Code

4259const char* CvCity::getProductionName() const4260{4261	VALIDATE_OBJECT4262	const OrderData* pOrderNode = headOrderQueueNode();42634264	if(pOrderNode != NULL)4265	{4266		switch(pOrderNode->eOrderType)4267		{4268		case ORDER_TRAIN:4269		{4270			CvUnitEntry* pkUnitInfo = GC.getUnitInfo((UnitTypes)pOrderNode->iData1);4271			if(pkUnitInfo)4272			{4273				return pkUnitInfo->GetDescription();4274			}4275		}4276		break;42774278		case ORDER_CONSTRUCT:4279		{4280			CvBuildingEntry* pkBuildingInfo = GC.getBuildingInfo((BuildingTypes)pOrderNode->iData1);4281			if(pkBuildingInfo)4282			{4283				return pkBuildingInfo->GetDescription();4284			}4285		}4286		break;42874288		case ORDER_CREATE:4289		{4290			CvProjectEntry* pkProjectInfo = GC.getProjectInfo((ProjectTypes)pOrderNode->iData1);4291			if(pkProjectInfo)4292			{4293				return pkProjectInfo->GetDescription();4294			}4295		}4296		break;42974298		case ORDER_PREPARE:4299		{4300			CvSpecialistInfo* pkSpecialistInfo = GC.getSpecialistInfo((SpecialistTypes)pOrderNode->iData1);4301			if(pkSpecialistInfo)4302			{4303				return pkSpecialistInfo->GetDescription();4304			}4305		}4306		break;43074308		case ORDER_MAINTAIN:4309		{4310			CvProcessInfo* pkProcessInfo = GC.getProcessInfo((ProcessTypes)pOrderNode->iData1);4311			if(pkProcessInfo)4312			{4313				return pkProcessInfo->GetDescription();4314			}4315		}4316		break;43174318		default:4319			CvAssertMsg(false, "pOrderNode->eOrderType failed to match a valid option");4320			break;4321		}4322	}43234324	return "";4325}

Calls

Called by