Bazaar developer reference

CvCity::getProductionModifier(CvString *) const

Defined in
CvCity.cpp, line 5462
Class
CvCity
Hook name
CivHooks::CvCity_getProductionModifier

Hooks

static bool BeforeCvCity_getProductionModifier(const CvCity* self, CvString* toolTipSink, int& result);static void AfterCvCity_getProductionModifier(const CvCity* self, CvString* toolTipSink, int& result);static int ReplaceCvCity_getProductionModifier(int (*original)(const CvCity*, CvString*), const CvCity* self, CvString* toolTipSink);CivRegisterBefore<CivHooks::CvCity_getProductionModifier>(host, &BeforeCvCity_getProductionModifier);CivRegisterAfter<CivHooks::CvCity_getProductionModifier>(host, &AfterCvCity_getProductionModifier);CivRegisterReplace<CivHooks::CvCity_getProductionModifier>(host, &ReplaceCvCity_getProductionModifier);

Code

5462int CvCity::getProductionModifier(CvString* toolTipSink) const5463{5464	VALIDATE_OBJECT5465	const OrderData* pOrderNode = headOrderQueueNode();54665467	int iMultiplier = 0;54685469	if(pOrderNode != NULL)5470	{5471		switch(pOrderNode->eOrderType)5472		{5473		case ORDER_TRAIN:5474			iMultiplier += getProductionModifier((UnitTypes)(pOrderNode->iData1), toolTipSink);5475			break;54765477		case ORDER_CONSTRUCT:5478			iMultiplier += getProductionModifier((BuildingTypes)(pOrderNode->iData1), toolTipSink);5479			break;54805481		case ORDER_CREATE:5482			iMultiplier += getProductionModifier((ProjectTypes)(pOrderNode->iData1), toolTipSink);5483			break;54845485		case ORDER_PREPARE:5486			iMultiplier += getProductionModifier((SpecialistTypes)(pOrderNode->iData1), toolTipSink);5487			break;54885489		case ORDER_MAINTAIN:5490			iMultiplier += getProductionModifier((ProcessTypes)(pOrderNode->iData1), toolTipSink);5491			break;54925493		default:5494			CvAssertMsg(false, "pOrderNode->eOrderType failed to match a valid option");5495			break;5496		}5497	}54985499	return iMultiplier;5500}

Calls

Called by