diff --git a/Source/ModLoader/ModLoader.cs b/Source/ModLoader/ModLoader.cs index 8b4c467..ccf0498 100644 --- a/Source/ModLoader/ModLoader.cs +++ b/Source/ModLoader/ModLoader.cs @@ -43,27 +43,31 @@ public static void Start() } } */ - string[] pathFiles = Directory.GetFiles(modsDir.FullName, "*.dll", SearchOption.AllDirectories); - List files = new List(); - foreach (var file in pathFiles) + if (modsDir.Exists) { - files.Add(new FileInfo(file)); - } + string[] pathFiles = Directory.GetFiles(modsDir.FullName, "*.dll", SearchOption.AllDirectories); - try - { - DependencyGraph dependencyGraph = PreloadModAssemblies(files); - List sortedAssemblies = dependencyGraph?.TopologicalSort(); - List loadableMods = CheckForDependences(sortedAssemblies); - List loadedMods = ApplyHarmonyPatches(loadableMods); - CallOnLoadMethods(loadedMods); + List files = new List(); + foreach (var file in pathFiles) + { + files.Add(new FileInfo(file)); + } - ModLogger.WriteLine("All mods successfully loaded!"); - } - catch (ModLoadingException mle) - { - failureMessage = mle.Message; + try + { + DependencyGraph dependencyGraph = PreloadModAssemblies(files); + List sortedAssemblies = dependencyGraph?.TopologicalSort(); + List loadableMods = CheckForDependences(sortedAssemblies); + List loadedMods = ApplyHarmonyPatches(loadableMods); + CallOnLoadMethods(loadedMods); + + ModLogger.WriteLine("All mods successfully loaded!"); + } + catch (ModLoadingException mle) + { + failureMessage = mle.Message; + } } }