From 22998af007e7667341aab5ebf8adb39c03c3c386 Mon Sep 17 00:00:00 2001 From: Shaun McFall Date: Mon, 14 Dec 2020 15:10:31 -0500 Subject: [PATCH] Resolve relative paths for tileset sources in tiled map importer --- .../Tiled/TiledMapImporter.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/dotnet/MonoGame.Extended.Content.Pipeline/Tiled/TiledMapImporter.cs b/src/dotnet/MonoGame.Extended.Content.Pipeline/Tiled/TiledMapImporter.cs index 71ed1023..70e2beee 100644 --- a/src/dotnet/MonoGame.Extended.Content.Pipeline/Tiled/TiledMapImporter.cs +++ b/src/dotnet/MonoGame.Extended.Content.Pipeline/Tiled/TiledMapImporter.cs @@ -50,16 +50,19 @@ namespace MonoGame.Extended.Content.Pipeline.Tiled { var tileset = map.Tilesets[i]; + string getTilesetSource(string source) + => Path.GetFullPath(Path.Combine(Path.GetDirectoryName(mapFilePath), source)); + if (!string.IsNullOrWhiteSpace(tileset.Source)) { - tileset.Source = Path.Combine(Path.GetDirectoryName(mapFilePath), tileset.Source); + tileset.Source = getTilesetSource(tileset.Source); ContentLogger.Log($"Adding dependency for {tileset.Source}"); // We depend on the tileset. If the tileset changes, the map also needs to rebuild. context.AddDependency(tileset.Source); } else { - tileset.Image.Source = Path.Combine(Path.GetDirectoryName(mapFilePath), tileset.Image.Source); + tileset.Image.Source = getTilesetSource(tileset.Image.Source); ContentLogger.Log($"Adding dependency for {tileset.Image.Source}"); context.AddDependency(tileset.Image.Source); }