Bazaar developer reference

CvEconomicAI::Write(FDataStream &)

Defined in
CvEconomicAI.cpp, line 440
Class
CvEconomicAI
Hook name
CivHooks::CvEconomicAI_Write

Hooks

static bool BeforeCvEconomicAI_Write(CvEconomicAI* self, FDataStream& kStream);static void AfterCvEconomicAI_Write(CvEconomicAI* self, FDataStream& kStream);static void ReplaceCvEconomicAI_Write(void (*original)(CvEconomicAI*, FDataStream&), CvEconomicAI* self, FDataStream& kStream);CivRegisterBefore<CivHooks::CvEconomicAI_Write>(host, &BeforeCvEconomicAI_Write);CivRegisterAfter<CivHooks::CvEconomicAI_Write>(host, &AfterCvEconomicAI_Write);CivRegisterReplace<CivHooks::CvEconomicAI_Write>(host, &ReplaceCvEconomicAI_Write);

Code

439/// Serialization write440void CvEconomicAI::Write(FDataStream& kStream)441{442	// Current version number443	uint uiVersion = 1;444	kStream << uiVersion;445	MOD_SERIALIZE_INIT_WRITE(kStream);446447	FAssertMsg(GC.getNumEconomicAIStrategyInfos() > 0, "Number of AIStrategies to serialize is expected to greater than 0");448	kStream << m_pAIStrategies->GetNumEconomicAIStrategies();449	kStream << ArrayWrapper<bool>(m_pAIStrategies->GetNumEconomicAIStrategies(), m_pabUsingStrategy);450	kStream << ArrayWrapper<int>(m_pAIStrategies->GetNumEconomicAIStrategies(), m_paiTurnStrategyAdopted);451	for(uint ui = 0; ui < NUM_YIELD_TYPES; ui++)452	{453		kStream << m_auiYields[ui];454	}455456	kStream << m_bExplorationPlotsDirty;457	kStream << m_aiExplorationPlots.size();458	for(uint ui = 0; ui < m_aiExplorationPlots.size(); ui++)459	{460		kStream << m_aiExplorationPlots[ui];461		kStream << m_aiExplorationPlotRatings[ui];462	}463464	kStream << m_aiGoodyHutPlots.size();465	for(uint ui = 0; ui < m_aiGoodyHutPlots.size(); ui++)466	{467		kStream << m_aiGoodyHutPlots[ui];468		kStream << m_aiGoodyHutUnitAssignments[ui].m_iUnitID;469	}470471	kStream << (int)m_eReconState;472	kStream << (int)m_eNavalReconState;473	kStream << m_iExplorersDisbanded;474	kStream << m_iLastTurnWorkerDisbanded;475	kStream << m_iVisibleAntiquitySites;476477	kStream << (int)m_RequestedSavings.size();478	for(uint ui = 0; ui < m_RequestedSavings.size(); ui++)479	{480		kStream << m_RequestedSavings[ui];481	}482}

Calls

Called by