automatically delete obsolete config properties
This commit is contained in:
@@ -10,6 +10,7 @@ import net.minecraftforge.fml.relauncher.Side
|
||||
import net.minecraftforge.fml.relauncher.SideOnly
|
||||
|
||||
// BetterFoliage-specific property delegates
|
||||
private val OBSOLETE = ObsoleteConfigProperty()
|
||||
private fun featureEnable() = boolean(true).lang("enabled")
|
||||
private fun distanceLimit() = int(min=1, max=1000, default=1000).lang("distance")
|
||||
fun biomeList(defaults: (Biome) -> Boolean) = intList {
|
||||
@@ -42,6 +43,13 @@ object Config : DelegatingConfig(BetterFoliageMod.MOD_ID, BetterFoliageMod.DOMAI
|
||||
val sand = ConfigurableBlockMatcher(BetterFoliageMod.DOMAIN, "SandDefault.cfg")
|
||||
val lilypad = ConfigurableBlockMatcher(BetterFoliageMod.DOMAIN, "LilypadDefault.cfg")
|
||||
val cactus = ConfigurableBlockMatcher(BetterFoliageMod.DOMAIN, "CactusDefault.cfg")
|
||||
|
||||
val leavesWhitelist = OBSOLETE
|
||||
val leavesBlacklist = OBSOLETE
|
||||
val grassWhitelist = OBSOLETE
|
||||
val grassBlacklist = OBSOLETE
|
||||
val logsWhitelist = OBSOLETE
|
||||
val logsBlacklist = OBSOLETE
|
||||
}
|
||||
|
||||
object leaves {
|
||||
|
||||
@@ -144,6 +144,14 @@ abstract class ConfigPropertyBase {
|
||||
open fun read() {}
|
||||
}
|
||||
|
||||
class ObsoleteConfigProperty : ConfigPropertyBase() {
|
||||
override fun attach(target: Configuration, langPrefix: String, categoryName: String, propertyName: String) {
|
||||
target.getCategory(categoryName)?.remove(propertyName)
|
||||
}
|
||||
override val guiProperties = emptyList<Property>()
|
||||
override val hasChanged: Boolean get() = false
|
||||
}
|
||||
|
||||
/** Delegate for a property backed by a single [Property] instance. */
|
||||
abstract class ConfigPropertyDelegate<T>() : ConfigPropertyBase() {
|
||||
/** Cached value of the property. */
|
||||
|
||||
Reference in New Issue
Block a user