From 3dd73b799767651da3bdf13ee29637234595eae1 Mon Sep 17 00:00:00 2001
From: Louis Capitanchik <contact@louiscap.co>
Date: Sun, 19 Nov 2023 02:25:06 +0000
Subject: [PATCH] Fix external level loading for non-root project files

---
 src/ldtk/mod.rs | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/ldtk/mod.rs b/src/ldtk/mod.rs
index 92ec9d0..d581c00 100644
--- a/src/ldtk/mod.rs
+++ b/src/ldtk/mod.rs
@@ -209,9 +209,13 @@ impl AssetLoader for LdtkLoader {
 					.map(|path| (level.identifier.clone(), path))
 			});
 
+			let parent_path = load_context.path().parent().map(|pp| pp.to_path_buf());
 			for (id, path) in levels {
 				load_context.labeled_asset_scope(id, |lc| {
-					lc.load::<Level>(path);
+					match &parent_path {
+						Some(parent) => lc.load::<Level>(parent.join(path)),
+						None => lc.load::<Level>(path),
+					};
 				});
 			}
 
-- 
GitLab