MCPcopy Create free account
hub / github.com/ddnet/ddnet / ReplaceAreaTiles

Function ReplaceAreaTiles

src/tools/map_replace_area.cpp:268–298  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

266}
267
268void ReplaceAreaTiles(CDataFileReader aInputMaps[2], const float aaaGameAreas[][2][2], const CMapItemGroup *apLayerGroups[2], CMapItemLayer *apItem[2])
269{
270 CMapItemLayerTilemap *apTilemap[2];
271 CTile *apTile[2];
272 float aaaVisibleAreas[2][2][2], aaaReplaceableAreas[2][2][2];
273 CMapObject aObs[2];
274
275 for(int i = 0; i < 2; i++)
276 {
277 apTilemap[i] = (CMapItemLayerTilemap *)apItem[i];
278 apTile[i] = (CTile *)aInputMaps[i].GetData(apTilemap[i]->m_Data);
279 aObs[i] = CreateMapObject(apLayerGroups[i], 0, 0, apTilemap[i]->m_Width * 32, apTilemap[i]->m_Height * 32);
280 }
281
282 if(!GetVisibleArea(aaaGameAreas[1], aObs[1], aaaVisibleAreas[1]))
283 return;
284
285 GetReplaceableArea(aaaVisibleAreas[1], aObs[1], aaaReplaceableAreas[1]);
286 RemoveDestinationTiles(apTilemap[1], apTile[1], aaaReplaceableAreas[1]);
287
288 if(GetVisibleArea(aaaGameAreas[0], aObs[0], aaaVisibleAreas[0]) && AdaptVisibleAreas(aaaGameAreas, aObs, aaaVisibleAreas))
289 {
290 for(int i = 0; i < 2; i++)
291 GetReplaceableArea(aaaVisibleAreas[i], aObs[i], aaaReplaceableAreas[i]);
292
293 if(AdaptReplaceableAreas(aaaGameAreas, aaaVisibleAreas, aObs, aaaReplaceableAreas))
294 ReplaceDestinationTiles(apTilemap, apTile, aaaReplaceableAreas);
295 }
296
297 g_apNewData[apTilemap[1]->m_Data] = apTile[1];
298}
299
300void RemoveDestinationTiles(CMapItemLayerTilemap *pTilemap, CTile *pTile, float aaReplaceableArea[2][2])
301{

Callers 1

ReplaceAreaFunction · 0.85

Calls 8

CreateMapObjectFunction · 0.85
GetVisibleAreaFunction · 0.85
GetReplaceableAreaFunction · 0.85
RemoveDestinationTilesFunction · 0.85
AdaptVisibleAreasFunction · 0.85
AdaptReplaceableAreasFunction · 0.85
ReplaceDestinationTilesFunction · 0.85
GetDataMethod · 0.45

Tested by

no test coverage detected