public Level Build(TileMapAsset level) { GameObject root = new GameObject(level.m_mapName); Level levelRoot = root.AddComponent<Level>(); int numLayers = level.Layers.Count; levelRoot.InitLayers(numLayers); for (int i = 0; i < numLayers; ++i) { levelRoot.SetLayerAt(i,level.Layers[i].Build()); } return levelRoot; }
/// <summary> /// </summary> TileMapAsset[] CreateTileList() { // Create a new array with the same size as the assets array TileMapAsset[] tiles = new TileMapAsset[assets.arraySize]; int nIdx = 0; // Now, copy each element of the assets array to this new array foreach(SerializedProperty asset in assets) { tiles[nIdx] = new TileMapAsset(); tiles[nIdx].symbol = asset.FindPropertyRelative("symbol").stringValue; tiles[nIdx].prefab = (GameObject)asset.FindPropertyRelative("prefab").objectReferenceValue; nIdx++; } return tiles; }
public void BuildLevel(TileMapAsset level) { DestroyLevel(); m_levelRoot = builder.Build(level); }