56 lines
1.3 KiB
Kotlin
56 lines
1.3 KiB
Kotlin
package net.hareworks.simplymcdb
|
|
|
|
import net.hareworks.simplymcdb.Config
|
|
import net.hareworks.simplymcdb.database.Database
|
|
import net.hareworks.simplymcdb.command.smcdb
|
|
import net.hareworks.kommandlib.KommandLib
|
|
import org.bukkit.plugin.java.JavaPlugin
|
|
|
|
enum class State {
|
|
ACTIVE,
|
|
DISCONNECTED,
|
|
DISABLED
|
|
}
|
|
|
|
public class App : JavaPlugin() {
|
|
public var enabled: State = State.DISABLED
|
|
private set(value) {
|
|
field = value
|
|
Config.config.set("enabled", !value.equals(State.DISABLED))
|
|
}
|
|
companion object {
|
|
lateinit var instance: App
|
|
private set
|
|
}
|
|
lateinit var command: KommandLib
|
|
private set
|
|
override fun onEnable() {
|
|
instance = this
|
|
logger.info("simplymcdb enabled.")
|
|
|
|
Config.init()
|
|
command = KommandLib(this, "smcdb" to smcdb)
|
|
}
|
|
override fun onDisable() {
|
|
enabled = State.DISABLED
|
|
Database.disconnect()
|
|
command.unregister()
|
|
logger.info("simplymcdb disabled.")
|
|
}
|
|
|
|
public fun enable() {
|
|
Database.connect()
|
|
if (Database.instance == null) {
|
|
enabled = State.DISCONNECTED
|
|
return
|
|
}
|
|
logger.info("simplymcdb enabled.")
|
|
enabled = State.ACTIVE
|
|
}
|
|
|
|
public fun disable() {
|
|
Database.disconnect()
|
|
logger.info("simplymcdb disabled.")
|
|
enabled = State.DISABLED
|
|
}
|
|
} |