Hooks
static bool BeforeCvTeamTechs_Init(CvTeamTechs* self, CvTechXMLEntries* pTechs, CvTeam* pTeam);static void AfterCvTeamTechs_Init(CvTeamTechs* self, CvTechXMLEntries* pTechs, CvTeam* pTeam);static void ReplaceCvTeamTechs_Init(void (*original)(CvTeamTechs*, CvTechXMLEntries*, CvTeam*), CvTeamTechs* self, CvTechXMLEntries* pTechs, CvTeam* pTeam);CivRegisterBefore<CivHooks::CvTeamTechs_Init>(host, &BeforeCvTeamTechs_Init);CivRegisterAfter<CivHooks::CvTeamTechs_Init>(host, &AfterCvTeamTechs_Init);CivRegisterReplace<CivHooks::CvTeamTechs_Init>(host, &ReplaceCvTeamTechs_Init);
Code
1732/// Initialize1733void CvTeamTechs::Init(CvTechXMLEntries* pTechs, CvTeam* pTeam)1734{1735 // Store off the pointer to the techs active for this game and pointer to our team1736 m_pTechs = pTechs;1737 m_pTeam = pTeam;17381739 // Initialize status arrays1740 CvAssertMsg(m_pabHasTech==NULL, "about to leak memory, CvTeamTechs::m_pabHasTech");1741 m_pabHasTech = FNEW(bool[m_pTechs->GetNumTechs()], c_eCiv5GameplayDLL, 0);1742 CvAssertMsg(m_pabNoTradeTech==NULL, "about to leak memory, CvTeamTechs::m_pabNoTradeTech");1743 m_pabNoTradeTech = FNEW(bool[m_pTechs->GetNumTechs()], c_eCiv5GameplayDLL, 0);1744 CvAssertMsg(m_paiResearchProgress==NULL, "about to leak memory, CvTeamTechs::m_paiResearchProgress");1745 m_paiResearchProgress = FNEW(int [m_pTechs->GetNumTechs()], c_eCiv5GameplayDLL, 0);1746 CvAssertMsg(m_paiTechCount==NULL, "about to leak memory, CvTeamTechs::m_paiTechCount");1747 m_paiTechCount = FNEW(int [m_pTechs->GetNumTechs()], c_eCiv5GameplayDLL, 0);17481749 Reset();1750}