Skip to content

Instantly share code, notes, and snippets.

@DevSrSouza
Last active December 24, 2018 16:08
Show Gist options
  • Save DevSrSouza/27c776f0dbff12966fa6d56f70612b26 to your computer and use it in GitHub Desktop.
Save DevSrSouza/27c776f0dbff12966fa6d56f70612b26 to your computer and use it in GitHub Desktop.
Config helper for KotlinBukkitAPI
import br.com.devsrsouza.kotlinbukkitapi.dsl.config.YamlConfig
import br.com.devsrsouza.kotlinbukkitapi.dsl.config.loadAndSetDefault
import br.com.devsrsouza.kotlinbukkitapi.dsl.config.loadTransformerChangeColor
import br.com.devsrsouza.kotlinbukkitapi.dsl.config.saveTransformerChangeColor
import org.bukkit.plugin.Plugin
import java.io.File
import kotlin.reflect.KClass
fun Plugin.configLazy(file: String, model: KClass<*>) = lazy {
File(dataFolder, file).let {
dataFolder.mkdirs()
if(!it.exists()) it.createNewFile()
YamlConfig(it).apply {
if (loadAndSetDefault(model,
saveTransformer = { obj-> saveTransformerChangeColor(obj) },
loadTransformer = { obj-> loadTransformerChangeColor(obj) }
) > 0) { save() }
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment