CvPlayer::setResearchingTech(TechTypes, bool)
- Defined in
- CvPlayer.cpp, line 20864
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_setResearchingTech
Hooks
static bool BeforeCvPlayer_setResearchingTech(CvPlayer* self, TechTypes eIndex, bool bNewValue);static void AfterCvPlayer_setResearchingTech(CvPlayer* self, TechTypes eIndex, bool bNewValue);static void ReplaceCvPlayer_setResearchingTech(void (*original)(CvPlayer*, TechTypes, bool), CvPlayer* self, TechTypes eIndex, bool bNewValue);CivRegisterBefore<CivHooks::CvPlayer_setResearchingTech>(host, &BeforeCvPlayer_setResearchingTech);CivRegisterAfter<CivHooks::CvPlayer_setResearchingTech>(host, &AfterCvPlayer_setResearchingTech);CivRegisterReplace<CivHooks::CvPlayer_setResearchingTech>(host, &ReplaceCvPlayer_setResearchingTech);
Code
20864void CvPlayer::setResearchingTech(TechTypes eIndex, bool bNewValue)20865{20866 CvAssertMsg(eIndex >= 0, "eIndex is expected to be non-negative (invalid Index)");20867 CvAssertMsg(eIndex < GC.getNumTechInfos(), "eIndex is expected to be within maximum bounds (invalid Index)");2086820869 if(m_pPlayerTechs->IsResearchingTech(eIndex) != bNewValue)20870 {20871 GetPlayerTechs()->SetResearchingTech(eIndex, bNewValue);2087220873 if(GetID() == GC.getGame().getActivePlayer())20874 {20875 GC.GetEngineUserInterface()->setDirty(Popup_DIRTY_BIT, true); // to check whether we still need the tech chooser popup20876 }20877 }20878}