Active mod is now detected in parent directories.

This commit is contained in:
That-One-Nerd 2023-05-11 17:43:17 -04:00
parent 7854a576a7
commit 62d3ba6492

View File

@ -13,16 +13,29 @@ public class Mod
public static Mod? ReadDirectory(string dir) public static Mod? ReadDirectory(string dir)
{ {
if (!File.Exists(dir + "\\GameInfo.txt")) return null; dir = dir.Trim().Replace('/', '\\');
string check = dir;
while (!string.IsNullOrEmpty(check))
{
if (File.Exists(Path.Combine(check, "GameInfo.txt")))
{
// Root mod directory found, go from here.
// TODO: Parse VKV out of GameInfo.txt
Mod mod = new() Mod mod = new()
{ {
Name = dir.Split("\\").Last(), Name = Path.GetFileNameWithoutExtension(check), // TODO: replace with GameInfo: Title
RootDirectory = dir RootDirectory = check
}; };
return mod; return mod;
} }
check = Path.GetDirectoryName(check) ?? string.Empty; // Go to parent folder.
}
return null;
}
public override string ToString() => Name; public override string ToString() => Name;
} }