CvPlayer::DoUpdateCityConnectionHappiness()
- Defined in
- CvPlayer.cpp, line 12997
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_DoUpdateCityConnectionHappiness
Hooks
static bool BeforeCvPlayer_DoUpdateCityConnectionHappiness(CvPlayer* self);static void AfterCvPlayer_DoUpdateCityConnectionHappiness(CvPlayer* self);static void ReplaceCvPlayer_DoUpdateCityConnectionHappiness(void (*original)(CvPlayer*), CvPlayer* self);CivRegisterBefore<CivHooks::CvPlayer_DoUpdateCityConnectionHappiness>(host, &BeforeCvPlayer_DoUpdateCityConnectionHappiness);CivRegisterAfter<CivHooks::CvPlayer_DoUpdateCityConnectionHappiness>(host, &AfterCvPlayer_DoUpdateCityConnectionHappiness);CivRegisterReplace<CivHooks::CvPlayer_DoUpdateCityConnectionHappiness>(host, &ReplaceCvPlayer_DoUpdateCityConnectionHappiness);
Code
12996/// How much Happiness coming from Trade Routes?12997void CvPlayer::DoUpdateCityConnectionHappiness()12998{12999 int iHappinessPerTradeRoute = GetHappinessPerTradeRoute();1300013001 int iNumCities = 0;13002 if(iHappinessPerTradeRoute != 0)13003 {13004 CvCity* pCapitalCity = getCapitalCity();1300513006 // Must have a capital before we can check if other Cities are connected to it!13007 if(pCapitalCity != NULL && getNumCities() > 1)13008 {13009 CvCity* pLoopCity;1301013011 int iLoop;13012 for(pLoopCity = firstCity(&iLoop); pLoopCity != NULL; pLoopCity = nextCity(&iLoop))13013 {13014 if(pLoopCity != pCapitalCity)13015 {13016 if(GetTreasury()->HasCityConnectionRouteBetweenCities(pCapitalCity, pLoopCity))13017 {13018 iNumCities++;13019 }13020 }13021 }13022 }13023 }13024 m_iCityConnectionHappiness = iHappinessPerTradeRoute * iNumCities / 100; // Bring it out of hundreds13025}