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}