CvPlayer::GetHappinessFromResourceVariety() const
- Defined in
- CvPlayer.cpp, line 12202
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_GetHappinessFromResourceVariety
Hooks
static bool BeforeCvPlayer_GetHappinessFromResourceVariety(const CvPlayer* self, int& result);static void AfterCvPlayer_GetHappinessFromResourceVariety(const CvPlayer* self, int& result);static int ReplaceCvPlayer_GetHappinessFromResourceVariety(int (*original)(const CvPlayer*), const CvPlayer* self);CivRegisterBefore<CivHooks::CvPlayer_GetHappinessFromResourceVariety>(host, &BeforeCvPlayer_GetHappinessFromResourceVariety);CivRegisterAfter<CivHooks::CvPlayer_GetHappinessFromResourceVariety>(host, &AfterCvPlayer_GetHappinessFromResourceVariety);CivRegisterReplace<CivHooks::CvPlayer_GetHappinessFromResourceVariety>(host, &ReplaceCvPlayer_GetHappinessFromResourceVariety);
Code
12201/// Amount of Happiness from having a variety of Luxuries12202int CvPlayer::GetHappinessFromResourceVariety() const12203{12204 int iHappiness = 0;1220512206 int iMultipleLuxuriesBonus = /*1*/ GC.getHAPPINESS_PER_EXTRA_LUXURY();1220712208 // Check all connected Resources12209 int iNumHappinessResources = 0;1221012211 ResourceTypes eResource;12212 for(int iResourceLoop = 0; iResourceLoop < GC.getNumResourceInfos(); iResourceLoop++)12213 {12214 eResource = (ResourceTypes) iResourceLoop;1221512216 if(GetHappinessFromLuxury(eResource) > 0)12217 {12218 iNumHappinessResources++;12219 }12220 }1222112222 if(iNumHappinessResources > 1)12223 {12224 iHappiness += (--iNumHappinessResources * iMultipleLuxuriesBonus);12225 }1222612227 return iHappiness;12228}