From 21abb2931dd49ff806e3bbcdeb789ff6a6f96cef Mon Sep 17 00:00:00 2001 From: Anairkoen Schno Date: Sun, 5 Jan 2020 18:50:36 -0600 Subject: [PATCH] Removed old plugin interface stuff --- IPA.Loader/IPA.Loader.csproj | 3 -- IPA.Loader/Loader/PluginLoader.cs | 23 -------- IPA.Loader/Loader/PluginManager.cs | 3 +- .../BeatSaber/IDisablablePlugin.cs | 22 -------- .../BeatSaber/IEnhancedPlugin.cs | 32 ----------- .../PluginInterfaces/BeatSaber/IPlugin.cs | 53 ------------------- 6 files changed, 1 insertion(+), 135 deletions(-) delete mode 100644 IPA.Loader/PluginInterfaces/BeatSaber/IDisablablePlugin.cs delete mode 100644 IPA.Loader/PluginInterfaces/BeatSaber/IEnhancedPlugin.cs delete mode 100644 IPA.Loader/PluginInterfaces/BeatSaber/IPlugin.cs diff --git a/IPA.Loader/IPA.Loader.csproj b/IPA.Loader/IPA.Loader.csproj index 9540d98c..fabcff13 100644 --- a/IPA.Loader/IPA.Loader.csproj +++ b/IPA.Loader/IPA.Loader.csproj @@ -128,9 +128,6 @@ - - - diff --git a/IPA.Loader/Loader/PluginLoader.cs b/IPA.Loader/Loader/PluginLoader.cs index c1aa84fd..5abbcd7f 100644 --- a/IPA.Loader/Loader/PluginLoader.cs +++ b/IPA.Loader/Loader/PluginLoader.cs @@ -44,21 +44,6 @@ namespace IPA.Loader ResolveDependencies(); }); - /// - /// A container object for all the data relating to a plugin. - /// - [Obsolete("No longer useful as a construct")] - public class PluginInfo - { - internal IPlugin Plugin { get; set; } - - /// - /// Metadata for the plugin. - /// - /// the metadata for this plugin - public PluginMetadata Metadata { get; internal set; } = new PluginMetadata(); - } - internal static void YeetIfNeeded() { string pluginDir = BeatSaber.PluginsPath; @@ -197,14 +182,6 @@ namespace IPA.Loader return; } } - - if (type.HasInterface(typeof(IPlugin).FullName)) - { - Logger.loader.Warn("Interface-based plugin found"); - meta.IsAttributePlugin = false; - meta.PluginType = type; - return; - } } } diff --git a/IPA.Loader/Loader/PluginManager.cs b/IPA.Loader/Loader/PluginManager.cs index 2c4e4488..91525b86 100644 --- a/IPA.Loader/Loader/PluginManager.cs +++ b/IPA.Loader/Loader/PluginManager.cs @@ -222,12 +222,11 @@ namespace IPA.Loader /// if the plugin is enabled, otherwise. public static bool IsEnabled(PluginMetadata meta) => BSMetas.Any(p => p.Metadata == meta); - private static readonly List runtimeDisabled = new List(); /// /// Gets a list of disabled BSIPA plugins. /// /// a collection of all disabled plugins as - public static IEnumerable DisabledPlugins => PluginLoader.DisabledPlugins.Concat(runtimeDisabled.Select(p => p.Metadata)); + public static IEnumerable DisabledPlugins => PluginLoader.DisabledPlugins; /// /// An invoker for the event. diff --git a/IPA.Loader/PluginInterfaces/BeatSaber/IDisablablePlugin.cs b/IPA.Loader/PluginInterfaces/BeatSaber/IDisablablePlugin.cs deleted file mode 100644 index 7d5abd42..00000000 --- a/IPA.Loader/PluginInterfaces/BeatSaber/IDisablablePlugin.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; - -namespace IPA -{ - /// - /// Provides methods to allow runtime disabling of a plugin. - /// - [Obsolete("Use the attribute-based system instead.")] - public interface IDisablablePlugin : IPlugin - { - - /// - /// Called when a plugin is disabled at runtime. This should disable things like Harmony patches and unsubscribe - /// from events. After this is called there should be no lingering effects of the mod. - /// - /// - /// This will get called at shutdown, after , as well as when the - /// plugin is disabled at runtime. - /// - void OnDisable(); - } -} diff --git a/IPA.Loader/PluginInterfaces/BeatSaber/IEnhancedPlugin.cs b/IPA.Loader/PluginInterfaces/BeatSaber/IEnhancedPlugin.cs deleted file mode 100644 index 583e67e2..00000000 --- a/IPA.Loader/PluginInterfaces/BeatSaber/IEnhancedPlugin.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace IPA -{ - /// - /// - /// An enhanced version of a standard BeatSaber plugin. - /// - [Obsolete("Use the attribute-based system instead.")] - public interface IEnhancedPlugin : IPlugin - { - - /// - /// Gets invoked on every graphic update. - /// - void OnUpdate(); - - /// - /// Gets invoked on ever physics update. - /// - void OnFixedUpdate(); - - /// - /// Called after Update. - /// - void OnLateUpdate(); - } -} diff --git a/IPA.Loader/PluginInterfaces/BeatSaber/IPlugin.cs b/IPA.Loader/PluginInterfaces/BeatSaber/IPlugin.cs deleted file mode 100644 index afcd50fa..00000000 --- a/IPA.Loader/PluginInterfaces/BeatSaber/IPlugin.cs +++ /dev/null @@ -1,53 +0,0 @@ -using System; -using UnityEngine.SceneManagement; - -namespace IPA -{ - /// - /// Interface for BSIPA plugins. Every class that implements this will be loaded if the DLL is placed at - /// <install dir>/Plugins. - /// - /// - /// Mods implemented with this interface should handle being enabled at runtime properly, unless marked - /// with the "no-runtime-enable" feature. - /// - [Obsolete("Use the attribute-based system instead.")] - public interface IPlugin - { - /// - /// Called when a plugin is enabled. This is where you should set up Harmony patches and the like. - /// - /// - /// This will be called after Init, and will be called when the plugin loads normally too. - /// When a plugin is disabled at startup, neither this nor Init will be called until it is enabled. - /// - /// Init will only ever be called once. - /// - void OnEnable(); - - /// - /// Gets invoked when the application is closed. - /// - void OnApplicationQuit(); - - /// - /// Gets invoked whenever a scene is loaded. - /// - /// The scene currently loaded - /// The type of loading - void OnSceneLoaded(Scene scene, LoadSceneMode sceneMode); - - /// - /// Gets invoked whenever a scene is unloaded - /// - /// The unloaded scene - void OnSceneUnloaded(Scene scene); - - /// - /// Gets invoked whenever a scene is changed - /// - /// The Scene that was previously loaded - /// The Scene being loaded - void OnActiveSceneChanged(Scene prevScene, Scene nextScene); - } -}