Example #1
0
        public static ImportedTileset ImportFromTilesetReference(TMX.TilesetReference tilesetReference, string baseFolder, string tilesetDir, int cellWidth, int cellHeight, int pixelsPerUnit)
        {
            // The source path in the tileset reference is recorded relative to the tmx
            TSX.Tileset    actualTileset;
            ImportedTile[] importedTiles;
            if (tilesetReference.source != null)
            {
                string tsxPath = Path.Combine(baseFolder, tilesetReference.source);
                importedTiles = TiledTSXImporter.ImportTSXFile(tsxPath, tilesetDir, cellWidth, cellHeight, pixelsPerUnit, out actualTileset);
            }
            else
            {
                importedTiles = TiledTSXImporter.ImportEmbeddedTileset(tilesetReference, tilesetDir, baseFolder, cellWidth, cellHeight, pixelsPerUnit, out actualTileset);
            }

            if (importedTiles == null || (importedTiles.Length > 0 && importedTiles[0] == null))
            {
                Debug.LogError("Failed to import tileset " + (tilesetReference.source != null ? tilesetReference.source : tilesetReference.name) + " properly...");
                return(null);
            }

            return(new ImportedTileset(importedTiles, tilesetReference.firstgid, actualTileset));
        }