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") }