CvPlayer::GetHappinessFromNaturalWonders() const
- Defined in
- CvPlayer.cpp, line 12264
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_GetHappinessFromNaturalWonders
Hooks
static bool BeforeCvPlayer_GetHappinessFromNaturalWonders(const CvPlayer* self, int& result);static void AfterCvPlayer_GetHappinessFromNaturalWonders(const CvPlayer* self, int& result);static int ReplaceCvPlayer_GetHappinessFromNaturalWonders(int (*original)(const CvPlayer*), const CvPlayer* self);CivRegisterBefore<CivHooks::CvPlayer_GetHappinessFromNaturalWonders>(host, &BeforeCvPlayer_GetHappinessFromNaturalWonders);CivRegisterAfter<CivHooks::CvPlayer_GetHappinessFromNaturalWonders>(host, &AfterCvPlayer_GetHappinessFromNaturalWonders);CivRegisterReplace<CivHooks::CvPlayer_GetHappinessFromNaturalWonders>(host, &ReplaceCvPlayer_GetHappinessFromNaturalWonders);
Code
12263// Happiness from finding Natural Wonders12264int CvPlayer::GetHappinessFromNaturalWonders() const12265{12266 int iNumWonders = GET_TEAM(getTeam()).GetNumNaturalWondersDiscovered();1226712268 int iHappiness = iNumWonders* /*1*/ GC.getHAPPINESS_PER_NATURAL_WONDER();1226912270 // Trait boosts this further?12271 if(m_pTraits->GetNaturalWonderHappinessModifier() > 0)12272 {12273 iHappiness *= (100 + m_pTraits->GetNaturalWonderHappinessModifier());12274 iHappiness /= 100;12275 }1227612277 for(int iI = 0; iI < GC.getMap().numPlots(); iI++)12278 {12279 CvPlot* pPlot = GC.getMap().plotByIndexUnchecked(iI);12280 if(pPlot == NULL)12281 {12282 continue;12283 }1228412285 if(pPlot->getOwner() != m_eID)12286 {12287 continue;12288 }1228912290 FeatureTypes eFeature = pPlot->getFeatureType();12291 if(eFeature == NO_FEATURE)12292 {12293 continue;12294 }1229512296 int iPlotHappiness = GC.getFeatureInfo(eFeature)->getInBorderHappiness();1229712298 if(iPlotHappiness > 0)12299 {12300 // Trait boosts this further?12301 if(m_pTraits->GetNaturalWonderYieldModifier() > 0)12302 {12303 iPlotHappiness *= (100 + m_pTraits->GetNaturalWonderYieldModifier());12304 iPlotHappiness /= 100;12305 }1230612307 iHappiness += iPlotHappiness;12308 }12309 }1231012311 return iHappiness;12312}
Calls
- CvFeatureInfo::getInBorderHappiness() const
- CvGlobals::getFeatureInfo(FeatureTypes)
- CvGlobals::getHAPPINESS_PER_NATURAL_WONDER()
- CvGlobals::getMap()
- CvMap::numPlots() const
- CvMap::plotByIndexUnchecked(int) const
- CvPlayer::getTeam() const
- CvPlayerTraits::GetNaturalWonderHappinessModifier() const
- CvPlayerTraits::GetNaturalWonderYieldModifier() const
- CvPlot::getFeatureType() const
- CvPlot::getOwner() const
- CvTeam::GetNumNaturalWondersDiscovered() const
- CvTeam::getTeam(TeamTypes)
FAutoVariable::operator const PlayerTypes &