Bazaar developer reference

CvMap::Read(FDataStream &)

Defined in
CvMap.cpp, line 1358
Class
CvMap
Hook name
CivHooks::CvMap_Read
Lua events
GameEvents.TerraformingMap

Hooks

static bool BeforeCvMap_Read(CvMap* self, FDataStream& kStream);static void AfterCvMap_Read(CvMap* self, FDataStream& kStream);static void ReplaceCvMap_Read(void (*original)(CvMap*, FDataStream&), CvMap* self, FDataStream& kStream);CivRegisterBefore<CivHooks::CvMap_Read>(host, &BeforeCvMap_Read);CivRegisterAfter<CivHooks::CvMap_Read>(host, &AfterCvMap_Read);CivRegisterReplace<CivHooks::CvMap_Read>(host, &ReplaceCvMap_Read);

Code

1354//1355// read object from a stream1356// used during load1357//1358void CvMap::Read(FDataStream& kStream)1359{1360	CvMapInitData defaultMapData;13611362	// Init data before load1363	reset(&defaultMapData);13641365	// Version number to maintain backwards compatibility1366	uint uiVersion;1367	kStream >> uiVersion;1368	MOD_SERIALIZE_INIT_READ(kStream);13691370	kStream >> m_iGridWidth;1371	kStream >> m_iGridHeight;1372	m_iGridSize = m_iGridHeight * m_iGridWidth;1373	kStream >> m_iLandPlots;1374	kStream >> m_iOwnedPlots;1375	kStream >> m_iNumNaturalWonders;1376	kStream >> m_iTopLatitude;1377	kStream >> m_iBottomLatitude;13781379	kStream >> m_bWrapX;1380	kStream >> m_bWrapY;13811382	kStream >> m_guid.Data1;1383	kStream >> m_guid.Data2;1384	kStream >> m_guid.Data3;1385	ArrayWrapper<unsigned char> wrapm_guid(8, m_guid.Data4);1386	kStream >> wrapm_guid;13871388	CvAssertMsg((0 < GC.getNumResourceInfos()), "GC.getNumResourceInfos() is not greater than zero but an array is being allocated");1389	CvInfosSerializationHelper::ReadHashedDataArray(kStream, m_paiNumResource, GC.getNumResourceInfos());1390	CvInfosSerializationHelper::ReadHashedDataArray(kStream, m_paiNumResourceOnLand, GC.getNumResourceInfos());13911392	if(numPlots() > 0)1393	{1394		InitPlots();1395		int iI;1396		for(iI = 0; iI < numPlots(); iI++)1397		{1398			m_pMapPlots[iI].read(kStream);1399		}1400	}14011402	// call the read of the free list CvArea class allocations1403	kStream >> m_areas;14041405	kStream >> m_landmasses;14061407	m_iAIMapHints = 0;1408	kStream >> m_iAIMapHints;14091410	setup();14111412	updateAdjacency();14131414	gDLL->DoMapSetup(numPlots());14151416#if defined(MOD_EVENTS_TERRAFORMING)1417	if (MOD_EVENTS_TERRAFORMING) {1418		GAMEEVENTINVOKE_HOOK(GAMEEVENT_TerraformingMap, TERRAFORMINGEVENT_LOAD, 1);1419	}1420#endif1421}

Calls

Called by