diff options
author | Appability <appable@icloud.com> | 2022-10-11 23:59:37 -0700 |
---|---|---|
committer | Appability <appable@icloud.com> | 2022-10-11 23:59:37 -0700 |
commit | 2c0e73deb53f54d78bd5594786313ac82151be1a (patch) | |
tree | 97fc2f389cc99d8f9e078a1cd7b0c6a5859a3f34 /src/main/kotlin/com/examplemod/config/PersistentData.kt | |
parent | 363b2426f8d9e45e52c472750c798dcaceb05a88 (diff) | |
download | AmbientAddons-2c0e73deb53f54d78bd5594786313ac82151be1a.tar.gz AmbientAddons-2c0e73deb53f54d78bd5594786313ac82151be1a.tar.bz2 AmbientAddons-2c0e73deb53f54d78bd5594786313ac82151be1a.zip |
added chest qol features (complete, i think)
Diffstat (limited to 'src/main/kotlin/com/examplemod/config/PersistentData.kt')
-rw-r--r-- | src/main/kotlin/com/examplemod/config/PersistentData.kt | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/src/main/kotlin/com/examplemod/config/PersistentData.kt b/src/main/kotlin/com/examplemod/config/PersistentData.kt deleted file mode 100644 index 58e0ac0..0000000 --- a/src/main/kotlin/com/examplemod/config/PersistentData.kt +++ /dev/null @@ -1,35 +0,0 @@ -package com.examplemod.config - -import kotlinx.serialization.Serializable -import kotlinx.serialization.Transient -import kotlinx.serialization.json.Json -import java.io.File -import kotlinx.serialization.encodeToString -import kotlinx.serialization.decodeFromString - -@Serializable -data class PersistentData( - var exampleData: Map<String, String> = mapOf("key1" to "entry1"), - var moreExampleData: Int = 5 -) { - - fun save() { - configFile.writeText(Json.encodeToString(this)) - } - - companion object { - private val configFile: File = File(ExampleMod.configDirectory,"data.json") - - fun load(): PersistentData { - val data = if (!configFile.exists()) { - configFile.createNewFile() - PersistentData() - } else configFile.runCatching { - Json.decodeFromString<PersistentData>(this.readText()) - }.getOrNull() ?: PersistentData() - return data.apply { - this.save() - } - } - } -}
\ No newline at end of file |