/// <inheritdoc /> protected override void Dispose(bool disposing) { if (disposing) { File.WriteAllText(ConfigPath, JsonConvert.SerializeObject(_configuration, Formatting.Indented)); _clanManager.Dispose(); _memberManager.Dispose(); _commandRegistry.Dispose(); GeneralHooks.ReloadEvent -= OnReload; PlayerHooks.PlayerPermission -= OnPlayerPermission; PlayerHooks.PlayerPostLogin -= OnPlayerPostLogin; ServerApi.Hooks.NetSendBytes.Deregister(this, OnNetSendBytes); ServerApi.Hooks.ServerChat.Deregister(this, OnServerChat); } base.Dispose(disposing); }