Bazaar developer reference

CvBuildingEntry::IsScienceBuilding() const

Defined in
CvBuildingClasses.cpp, line 1630
Class
CvBuildingEntry
Hook name
CivHooks::CvBuildingEntry_IsScienceBuilding

Hooks

static bool BeforeCvBuildingEntry_IsScienceBuilding(const CvBuildingEntry* self, bool& result);static void AfterCvBuildingEntry_IsScienceBuilding(const CvBuildingEntry* self, bool& result);static bool ReplaceCvBuildingEntry_IsScienceBuilding(bool (*original)(const CvBuildingEntry*), const CvBuildingEntry* self);CivRegisterBefore<CivHooks::CvBuildingEntry_IsScienceBuilding>(host, &BeforeCvBuildingEntry_IsScienceBuilding);CivRegisterAfter<CivHooks::CvBuildingEntry_IsScienceBuilding>(host, &AfterCvBuildingEntry_IsScienceBuilding);CivRegisterReplace<CivHooks::CvBuildingEntry_IsScienceBuilding>(host, &ReplaceCvBuildingEntry_IsScienceBuilding);

Code

1629/// Derive property: is this considered a science building?1630bool CvBuildingEntry::IsScienceBuilding() const1631{1632	bool bRtnValue = false;16331634	if(IsCapital())1635	{1636		bRtnValue = false;1637	}1638	else if(GetYieldChange(YIELD_SCIENCE) > 0)1639	{1640		bRtnValue = true;1641	}1642	else if(GetYieldChangePerPop(YIELD_SCIENCE) > 0)1643	{1644		bRtnValue = true;1645	}1646	else if(GetYieldChangePerReligion(YIELD_SCIENCE) > 0)1647	{1648		bRtnValue = true;1649	}1650	else if(GetTechEnhancedYieldChange(YIELD_SCIENCE) > 0)1651	{1652		bRtnValue = true;1653	}1654	else if(GetYieldModifier(YIELD_SCIENCE) > 0)1655	{1656		bRtnValue = true;1657	}16581659	return bRtnValue;1660}

Calls

Called by