public void DeInitPlugin() { if (initialized) { var subs = ffxivPlugin.GetType().GetProperty("DataSubscription").GetValue(ffxivPlugin, null); var networkReceivedDelegateType = typeof(NetworkReceivedDelegate); var networkReceivedDelegate = Delegate.CreateDelegate(networkReceivedDelegateType, (object)this, "NetworkReceived", true); subs.GetType().GetEvent("NetworkReceived").RemoveEventHandler(subs, networkReceivedDelegate); statusLabel.Text = "Exit :|"; } else { statusLabel.Text = "Error :("; } }
public void DeInitPlugin() { if (initialized) { var subs = ffxivPlugin.GetType().GetProperty("DataSubscription").GetValue(ffxivPlugin, null); var networkReceivedDelegateType = typeof(NetworkReceivedDelegate); var networkReceivedDelegate = Delegate.CreateDelegate(networkReceivedDelegateType, (object)this, "NetworkReceived", true); subs.GetType().GetEvent("NetworkReceived").RemoveEventHandler(subs, networkReceivedDelegate); OtterThread.CancelAsync(); if (control.checkBoxAutoSaveAndLoad.Checked == true) { JsonSave(); } control.SaveSettings(); statusLabel.Text = "Exit :|"; } else { statusLabel.Text = "Error :("; } }