Bazaar developer reference

CvCity::canTrain(UnitCombatTypes) const

Defined in
CvCity.cpp, line 2779
Class
CvCity
Hook name
CivHooks::CvCity_canTrain_with_UnitCombatTypes_const

Hooks

static bool BeforeCvCity_canTrain_with_UnitCombatTypes_const(const CvCity* self, UnitCombatTypes eUnitCombat, bool& result);static void AfterCvCity_canTrain_with_UnitCombatTypes_const(const CvCity* self, UnitCombatTypes eUnitCombat, bool& result);static bool ReplaceCvCity_canTrain_with_UnitCombatTypes_const(bool (*original)(const CvCity*, UnitCombatTypes), const CvCity* self, UnitCombatTypes eUnitCombat);CivRegisterBefore<CivHooks::CvCity_canTrain_with_UnitCombatTypes_const>(host, &BeforeCvCity_canTrain_with_UnitCombatTypes_const);CivRegisterAfter<CivHooks::CvCity_canTrain_with_UnitCombatTypes_const>(host, &AfterCvCity_canTrain_with_UnitCombatTypes_const);CivRegisterReplace<CivHooks::CvCity_canTrain_with_UnitCombatTypes_const>(host, &ReplaceCvCity_canTrain_with_UnitCombatTypes_const);

Code

2779bool CvCity::canTrain(UnitCombatTypes eUnitCombat) const2780{2781	VALIDATE_OBJECT2782	for(int i = 0; i < GC.getNumUnitInfos(); i++)2783	{2784		const UnitTypes eUnit = static_cast<UnitTypes>(i);2785		CvUnitEntry* pkUnitInfo = GC.getUnitInfo(eUnit);2786		if(pkUnitInfo)2787		{2788			if(pkUnitInfo->GetUnitCombatType() == eUnitCombat)2789			{2790				if(canTrain(eUnit))2791				{2792					return true;2793				}2794			}2795		}2796	}27972798	return false;2799}

Calls