CvPlayer::specialistYield(SpecialistTypes, YieldTypes) const
- Defined in
- CvPlayer.cpp, line 10011
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_specialistYield
Hooks
static bool BeforeCvPlayer_specialistYield(const CvPlayer* self, SpecialistTypes eSpecialist, YieldTypes eYield, int& result);static void AfterCvPlayer_specialistYield(const CvPlayer* self, SpecialistTypes eSpecialist, YieldTypes eYield, int& result);static int ReplaceCvPlayer_specialistYield(int (*original)(const CvPlayer*, SpecialistTypes, YieldTypes), const CvPlayer* self, SpecialistTypes eSpecialist, YieldTypes eYield);CivRegisterBefore<CivHooks::CvPlayer_specialistYield>(host, &BeforeCvPlayer_specialistYield);CivRegisterAfter<CivHooks::CvPlayer_specialistYield>(host, &AfterCvPlayer_specialistYield);CivRegisterReplace<CivHooks::CvPlayer_specialistYield>(host, &ReplaceCvPlayer_specialistYield);
Code
10011int CvPlayer::specialistYield(SpecialistTypes eSpecialist, YieldTypes eYield) const10012{10013 CvSpecialistInfo* pkSpecialistInfo = GC.getSpecialistInfo(eSpecialist);10014 if(pkSpecialistInfo == NULL)10015 {10016 //This function REQUIRES a valid specialist info.10017 CvAssert(pkSpecialistInfo);10018 return 0;10019 }1002010021 int iRtnValue = pkSpecialistInfo->getYieldChange(eYield) + getSpecialistExtraYield(eSpecialist, eYield) + GetPlayerTraits()->GetSpecialistYieldChange(eSpecialist, eYield);10022#if defined(MOD_API_UNIFIED_YIELDS)10023 iRtnValue += getSpecialistYieldChange(eSpecialist, eYield);10024#endif1002510026 if (eSpecialist != GC.getDEFAULT_SPECIALIST())10027 {10028 iRtnValue += getSpecialistExtraYield(eYield);10029 }10030 return (iRtnValue);10031}
Calls
- CvGlobals::getDEFAULT_SPECIALIST()
- CvGlobals::getSpecialistInfo(SpecialistTypes)
- CvPlayer::GetPlayerTraits() const
- CvPlayer::getSpecialistExtraYield(SpecialistTypes, YieldTypes) const
- CvPlayer::getSpecialistExtraYield(YieldTypes) const
- CvPlayer::getSpecialistYieldChange(SpecialistTypes, YieldTypes) const
- CvPlayerTraits::GetSpecialistYieldChange(SpecialistTypes, YieldTypes) const
- CvSpecialistInfo::getYieldChange(int) const