Bazaar developer reference

CvWonderProductionAI::IsWonderNotNationalUnique(const CvBuildingEntry &) const

Defined in
CvWonderProductionAI.cpp, line 567
Class
CvWonderProductionAI
Hook name
CivHooks::CvWonderProductionAI_IsWonderNotNationalUnique

Hooks

static bool BeforeCvWonderProductionAI_IsWonderNotNationalUnique(const CvWonderProductionAI* self, const CvBuildingEntry& kBuilding, bool& result);static void AfterCvWonderProductionAI_IsWonderNotNationalUnique(const CvWonderProductionAI* self, const CvBuildingEntry& kBuilding, bool& result);static bool ReplaceCvWonderProductionAI_IsWonderNotNationalUnique(bool (*original)(const CvWonderProductionAI*, const CvBuildingEntry&), const CvWonderProductionAI* self, const CvBuildingEntry& kBuilding);CivRegisterBefore<CivHooks::CvWonderProductionAI_IsWonderNotNationalUnique>(host, &BeforeCvWonderProductionAI_IsWonderNotNationalUnique);CivRegisterAfter<CivHooks::CvWonderProductionAI_IsWonderNotNationalUnique>(host, &AfterCvWonderProductionAI_IsWonderNotNationalUnique);CivRegisterReplace<CivHooks::CvWonderProductionAI_IsWonderNotNationalUnique>(host, &ReplaceCvWonderProductionAI_IsWonderNotNationalUnique);

Code

565#if defined(MOD_AI_SMART_V3)566/// Check wonders excluding national wonders you can only have one of.567bool CvWonderProductionAI::IsWonderNotNationalUnique(const CvBuildingEntry& kBuilding) const568{569	const CvBuildingClassInfo& kBuildingClass = kBuilding.GetBuildingClassInfo();570571	bool isNationalUnique = kBuildingClass.getMaxPlayerInstances() == 1;572573	if((::isWorldWonderClass(kBuildingClass) || ::isTeamWonderClass(kBuildingClass) || ::isNationalWonderClass(kBuildingClass)) && !isNationalUnique)574	{575		return true;576	}577	return false;578}

Calls

Called by