|
@@ -1,14 +1,25 @@
|
|
-namespace BepInEx.NetLauncher
|
|
|
|
|
|
+using BepInEx.Configuration;
|
|
|
|
+using BepInEx.Logging;
|
|
|
|
+
|
|
|
|
+namespace BepInEx.NetLauncher
|
|
{
|
|
{
|
|
public abstract class BasePlugin
|
|
public abstract class BasePlugin
|
|
{
|
|
{
|
|
- protected HarmonyLib.Harmony HarmonyInstance { get; }
|
|
|
|
|
|
+ public ManualLogSource Log { get; }
|
|
|
|
+
|
|
|
|
+ public ConfigFile Config { get; }
|
|
|
|
+
|
|
|
|
+ public HarmonyLib.Harmony HarmonyInstance { get; set; }
|
|
|
|
|
|
protected BasePlugin()
|
|
protected BasePlugin()
|
|
{
|
|
{
|
|
- //var info = PluginInfoHelper.GetPluginInfo(this);
|
|
|
|
|
|
+ var metadata = MetadataHelper.GetMetadata(this);
|
|
|
|
+
|
|
|
|
+ HarmonyInstance = new HarmonyLib.Harmony("BepInEx.Plugin." + metadata.GUID);
|
|
|
|
+
|
|
|
|
+ Log = Logger.CreateLogSource(metadata.Name);
|
|
|
|
|
|
- //HarmonyInstance = new HarmonyLib.Harmony("BepInEx.Plugin." + info.GUID);
|
|
|
|
|
|
+ Config = new ConfigFile(Utility.CombinePaths(Paths.ConfigPath, metadata.GUID + ".cfg"), false, metadata);
|
|
}
|
|
}
|
|
|
|
|
|
public abstract void Load();
|
|
public abstract void Load();
|