CvPlayer::GetScienceTimes100() const
- Defined in
- CvPlayer.cpp, line 18767
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_GetScienceTimes100
Hooks
static bool BeforeCvPlayer_GetScienceTimes100(const CvPlayer* self, int& result);static void AfterCvPlayer_GetScienceTimes100(const CvPlayer* self, int& result);static int ReplaceCvPlayer_GetScienceTimes100(int (*original)(const CvPlayer*), const CvPlayer* self);CivRegisterBefore<CivHooks::CvPlayer_GetScienceTimes100>(host, &BeforeCvPlayer_GetScienceTimes100);CivRegisterAfter<CivHooks::CvPlayer_GetScienceTimes100>(host, &AfterCvPlayer_GetScienceTimes100);CivRegisterReplace<CivHooks::CvPlayer_GetScienceTimes100>(host, &ReplaceCvPlayer_GetScienceTimes100);
Code
18767int CvPlayer::GetScienceTimes100() const18768{18769 // If we're in anarchy, then no Research is done!18770 if(IsAnarchy())18771 return 0;1877218773 int iValue = 0;1877418775 // Science from our Cities18776 iValue += GetScienceFromCitiesTimes100(false);1877718778#if defined(MOD_API_UNIFIED_YIELDS)18779 // Science from religion18780 iValue += GetYieldPerTurnFromReligion(YIELD_SCIENCE) * 100;18781#endif1878218783#if defined(MOD_API_UNIFIED_YIELDS)18784 // Trait bonus which adds Science for trade partners? 18785 iValue += GetYieldPerTurnFromTraits(YIELD_SCIENCE) * 100;18786#endif1878718788 // Science from other players!18789 iValue += GetScienceFromOtherPlayersTimes100();1879018791 // Happiness converted to Science? (Policies, etc.)18792 iValue += GetScienceFromHappinessTimes100();1879318794 // Research Agreement bonuses18795 iValue += GetScienceFromResearchAgreementsTimes100();1879618797 // If we have a negative Treasury + GPT then it gets removed from Science18798 iValue += GetScienceFromBudgetDeficitTimes100();1879918800 return max(iValue, 0);18801}
Calls
- CvPlayer::GetScienceFromBudgetDeficitTimes100() const
- CvPlayer::GetScienceFromCitiesTimes100(bool) const
- CvPlayer::GetScienceFromHappinessTimes100() const
- CvPlayer::GetScienceFromOtherPlayersTimes100() const
- CvPlayer::GetScienceFromResearchAgreementsTimes100() const
- CvPlayer::GetYieldPerTurnFromReligion(YieldTypes) const
- CvPlayer::GetYieldPerTurnFromTraits(YieldTypes) const
- CvPlayer::IsAnarchy() const
std::max
Called by
- CvMinorCivAI::GetScienceFriendshipBonusTimes100()
- CvPlayer::GetScience() const
- CvPlayer::doResearch()
- CvPlayer::found(int, int, ReligionTypes)
- CvTechAI::ReweightByCost(CvPlayer *, bool)
- CvPlayerTechs::GetResearchTurnsLeftTimes100(TechTypes, bool) const
- CvTeamTechs::GetMaxResearchOverflow(TechTypes, PlayerTypes) const
- CvLuaPlayer::lGetScienceTimes100(lua_State *)