Bazaar developer reference

CvPlayerTraits::GetFreeBuildingOnConquest() const

Defined in
CvTraitClasses.cpp, line 2934
Class
CvPlayerTraits
Hook name
CivHooks::CvPlayerTraits_GetFreeBuildingOnConquest

Hooks

static bool BeforeCvPlayerTraits_GetFreeBuildingOnConquest(const CvPlayerTraits* self, BuildingTypes& result);static void AfterCvPlayerTraits_GetFreeBuildingOnConquest(const CvPlayerTraits* self, BuildingTypes& result);static BuildingTypes ReplaceCvPlayerTraits_GetFreeBuildingOnConquest(BuildingTypes (*original)(const CvPlayerTraits*), const CvPlayerTraits* self);CivRegisterBefore<CivHooks::CvPlayerTraits_GetFreeBuildingOnConquest>(host, &BeforeCvPlayerTraits_GetFreeBuildingOnConquest);CivRegisterAfter<CivHooks::CvPlayerTraits_GetFreeBuildingOnConquest>(host, &AfterCvPlayerTraits_GetFreeBuildingOnConquest);CivRegisterReplace<CivHooks::CvPlayerTraits_GetFreeBuildingOnConquest>(host, &ReplaceCvPlayerTraits_GetFreeBuildingOnConquest);

Code

2933/// Does each conquered city get a free building?2934BuildingTypes CvPlayerTraits::GetFreeBuildingOnConquest() const2935{2936	for(int iI = 0; iI < GC.getNumTraitInfos(); iI++)2937	{2938		const TraitTypes eTrait = static_cast<TraitTypes>(iI);2939		CvTraitEntry* pkTraitInfo = GC.getTraitInfo(eTrait);2940		if(pkTraitInfo)2941		{2942			if(HasTrait(eTrait))2943			{2944				if(pkTraitInfo->GetFreeBuildingOnConquest())2945				{2946					return pkTraitInfo->GetFreeBuildingOnConquest();2947				}2948			}2949		}2950	}29512952	return NO_BUILDING;2953}

Calls

Called by