diff --git a/PluginLoader/Data/LocalPlugin.cs b/PluginLoader/Data/LocalPlugin.cs index 135d39b..3fb0958 100644 --- a/PluginLoader/Data/LocalPlugin.cs +++ b/PluginLoader/Data/LocalPlugin.cs @@ -88,7 +88,7 @@ public class LocalPlugin : PluginData return null; var assembly = Assembly.LoadFile(assemblyPath); - LogFile.WriteLine("Resolving " + assembly.GetName().Name + " for " + args.RequestingAssembly?.FullName); + LogFile.WriteLine("Resolving " + assembly.GetName().Name + " for " + args.RequestingAssembly?.FullName, false); var main = Main.Instance; if (!main.Config.IsEnabled(assemblyPath)) diff --git a/PluginLoader/LoaderTools.cs b/PluginLoader/LoaderTools.cs index 779c3ee..827ed22 100644 --- a/PluginLoader/LoaderTools.cs +++ b/PluginLoader/LoaderTools.cs @@ -106,7 +106,7 @@ public static class LoaderTools public static void Restart() { Process.Start("explorer.exe", "steam://rungameid/244850"); - Environment.Exit(0); + Process.GetCurrentProcess().Kill(); } public static void ExecuteMain(SEPMPlugin plugin) diff --git a/PluginLoader/PluginConfig.cs b/PluginLoader/PluginConfig.cs index 685178a..f0be733 100644 --- a/PluginLoader/PluginConfig.cs +++ b/PluginLoader/PluginConfig.cs @@ -79,16 +79,24 @@ public class PluginConfig var toRemove = new List(); var sb = new StringBuilder("Enabled plugins: "); + var localPlugins = new StringBuilder("Local plugins: "); foreach (var id in EnabledPlugins) - if (!plugins.Contains(id)) + { + if (!plugins.TryGetPlugin(id, out var plugin)) { - LogFile.WriteLine($"{id} was in the config but is no longer available"); + LogFile.WriteLine($"{id} was in the config but is no longer available", false); toRemove.Add(id); } - else + else if (!plugin.IsLocal) { sb.Append(id).Append(", "); } + else + { + localPlugins.Append(id).Append(", "); + } + } + if (EnabledPlugins.Count > 0) sb.Length -= 2; @@ -96,6 +104,11 @@ public class PluginConfig sb.Append("None"); LogFile.WriteLine(sb.ToString()); + if (localPlugins.Length > 15) + localPlugins.Length -= 2; + else + localPlugins.Append("None"); + LogFile.WriteLine(localPlugins.ToString(), false); foreach (var id in toRemove) EnabledPlugins.Remove(id); diff --git a/PluginLoader/PluginInstance.cs b/PluginLoader/PluginInstance.cs index 899e653..b6e7d67 100644 --- a/PluginLoader/PluginInstance.cs +++ b/PluginLoader/PluginInstance.cs @@ -102,7 +102,7 @@ public class PluginInstance } if (count > 0) - LogFile.WriteLine($"Registered {count} session components from: {mainAssembly.FullName}"); + LogFile.WriteLine($"Registered {count} session components from: {mainAssembly.FullName}", !data.IsLocal); } catch (Exception e) {