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

Function CreateEmptyMap

src/tools/dummy_map.cpp:13–108  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

11#include <zlib.h>
12
13static void CreateEmptyMap(IStorage *pStorage)
14{
15 const char *pMapName = "maps/dummy3.map";
16
17 CDataFileWriter Writer;
18 if(!Writer.Open(pStorage, pMapName))
19 {
20 dbg_msg("dummy_map", "couldn't open map file '%s' for writing", pMapName);
21 return;
22 }
23 CMapItemGroup_v1 Group;
24 Group.m_Version = 1;
25 Group.m_OffsetX = 0;
26 Group.m_OffsetY = 0;
27 Group.m_ParallaxX = 0;
28 Group.m_ParallaxY = 0;
29 Group.m_StartLayer = 0;
30 Group.m_NumLayers = 2;
31 Writer.AddItem(MAPITEMTYPE_GROUP, 0, sizeof(Group), &Group);
32
33 constexpr int LayerWidth = 2;
34 constexpr int LayerHeight = 2;
35 CTile aTiles[LayerWidth * LayerHeight];
36 for(auto &Tile : aTiles)
37 {
38 Tile.m_Index = 1;
39 Tile.m_Flags = 0;
40 Tile.m_Skip = 0;
41 Tile.m_Reserved = 0;
42 }
43 const int TilesData = Writer.AddData(sizeof(aTiles), &aTiles);
44
45 CMapItemLayerTilemap GameLayer;
46 GameLayer.m_Layer.m_Version = 0; // Not set by the official client.
47 GameLayer.m_Layer.m_Type = LAYERTYPE_TILES;
48 GameLayer.m_Layer.m_Flags = 0;
49 GameLayer.m_Version = 2;
50 GameLayer.m_Width = LayerWidth;
51 GameLayer.m_Height = LayerHeight;
52 GameLayer.m_Flags = TILESLAYERFLAG_GAME;
53 GameLayer.m_Color.r = 0;
54 GameLayer.m_Color.g = 0;
55 GameLayer.m_Color.b = 0;
56 GameLayer.m_Color.a = 0;
57 GameLayer.m_ColorEnv = -1;
58 GameLayer.m_ColorEnvOffset = 0;
59 GameLayer.m_Image = -1;
60 GameLayer.m_Data = TilesData;
61 Writer.AddItem(MAPITEMTYPE_LAYER, 0, sizeof(GameLayer) - sizeof(GameLayer.m_aName) - sizeof(GameLayer.m_Tele) - sizeof(GameLayer.m_Speedup) - sizeof(GameLayer.m_Front) - sizeof(GameLayer.m_Switch) - sizeof(GameLayer.m_Tune), &GameLayer);
62
63 CMapItemLayerTilemap Layer;
64 Layer.m_Layer.m_Version = 0;
65 Layer.m_Layer.m_Type = LAYERTYPE_TILES;
66 Layer.m_Layer.m_Flags = 0;
67 Layer.m_Version = 2;
68 Layer.m_Width = LayerWidth;
69 Layer.m_Height = LayerHeight;
70 Layer.m_Flags = 0;

Callers 1

mainFunction · 0.85

Calls 10

dbg_msgFunction · 0.85
crc32Function · 0.85
sha256Function · 0.85
sha256_strFunction · 0.85
str_hex_cstyleFunction · 0.85
AddItemMethod · 0.80
AddDataMethod · 0.80
ReadFileMethod · 0.80
OpenMethod · 0.45
FinishMethod · 0.45

Tested by

no test coverage detected