From 931f2a51221dd29beb582395af9868f3a292be5a Mon Sep 17 00:00:00 2001 From: Iru21 <33987046+Iru21@users.noreply.github.com> Date: Wed, 23 Aug 2023 09:31:29 +0200 Subject: [PATCH] Disable the plugin if the server is in online mode --- gradle.properties | 2 +- src/main/kotlin/me/iru/Authy.kt | 20 +++++++++++++++++--- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/gradle.properties b/gradle.properties index 9fdca88..26d96b3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ kotlin.code.style = official minecraftVersion = 1.17 pluginName = Authy -pluginVersion = 3.4.2 +pluginVersion = 3.5.0 diff --git a/src/main/kotlin/me/iru/Authy.kt b/src/main/kotlin/me/iru/Authy.kt index 79aef51..f1a5f4b 100644 --- a/src/main/kotlin/me/iru/Authy.kt +++ b/src/main/kotlin/me/iru/Authy.kt @@ -28,6 +28,8 @@ class Authy : JavaPlugin() { val prefix = "${ChatColor.DARK_GRAY}[${ChatColor.GOLD}$pluginName${ChatColor.DARK_GRAY}]" + private var initialized = false + companion object { lateinit var instance: Authy private set lateinit var translations: Translations private set @@ -40,10 +42,17 @@ class Authy : JavaPlugin() { override fun onEnable() { instance = this - translations = Translations() + if(server.onlineMode) { + server.consoleSender.sendMessage("$prefix ${ChatColor.RED}Server is in online mode! Switch to offline mode and restart the server!") + server.pluginManager.disablePlugin(this) + return + } + playerData = PlayerData() Migration.updateSystem() DatabaseMigration.tryMigrate() + + translations = Translations() loginProcess = LoginProcess() authManager = AuthManager() session = Session() @@ -65,6 +74,8 @@ class Authy : JavaPlugin() { with(commandFilter) { registerFilter() } + initialized = true + server.consoleSender.sendMessage("$prefix ${ChatColor.GREEN}Enabled $version") val players = server.onlinePlayers @@ -84,8 +95,11 @@ class Authy : JavaPlugin() { } override fun onDisable() { - DatabaseMigration.saveLastDatabaseType() - playerData.databaseConnection.shutdownConnections() + if(initialized) { + DatabaseMigration.saveLastDatabaseType() + playerData.databaseConnection.shutdownConnections() + initialized = false + } server.consoleSender.sendMessage("$prefix ${ChatColor.RED}Disabled $version") }