namespace IPA { /// /// Provides methods to allow runtime enabling and disabling of a plugin. /// public interface IDisablablePlugin { /// /// 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(); /// /// 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(); } }