mirror of
https://github.com/yairm210/Unciv.git
synced 2025-02-23 05:00:43 +07:00
Unified errorSeverityForFilter checks into single function, we have a LOT of filters!
This commit is contained in:
parent
fb1e57668e
commit
62687c2230
@ -85,11 +85,7 @@ enum class UniqueParameterType(
|
|||||||
"City-State", Constants.embarked, "Non-City")
|
"City-State", Constants.embarked, "Non-City")
|
||||||
|
|
||||||
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
UniqueType.UniqueParameterErrorSeverity? {
|
UniqueType.UniqueParameterErrorSeverity? = getErrorSeverityForFilter(parameterText, ruleset)
|
||||||
val isKnown = MultiFilter.multiFilter(parameterText, {isKnownValue(it, ruleset)}, true)
|
|
||||||
if (isKnown) return null
|
|
||||||
return UniqueType.UniqueParameterErrorSeverity.PossibleFilteringUnique
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun isKnownValue(parameterText:String, ruleset: Ruleset): Boolean {
|
override fun isKnownValue(parameterText:String, ruleset: Ruleset): Boolean {
|
||||||
if (parameterText in knownValues) return true
|
if (parameterText in knownValues) return true
|
||||||
@ -109,11 +105,8 @@ enum class UniqueParameterType(
|
|||||||
"relevant", // used for UniqueType.UnitStartingPromotions
|
"relevant", // used for UniqueType.UnitStartingPromotions
|
||||||
)
|
)
|
||||||
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
UniqueType.UniqueParameterErrorSeverity? {
|
UniqueType.UniqueParameterErrorSeverity? = getErrorSeverityForFilter(parameterText, ruleset)
|
||||||
val isKnown = MultiFilter.multiFilter(parameterText, {isKnownValue(it, ruleset)}, true)
|
|
||||||
if (isKnown) return null
|
|
||||||
return UniqueType.UniqueParameterErrorSeverity.PossibleFilteringUnique
|
|
||||||
}
|
|
||||||
override fun isKnownValue(parameterText:String, ruleset: Ruleset): Boolean {
|
override fun isKnownValue(parameterText:String, ruleset: Ruleset): Boolean {
|
||||||
if (parameterText in knownValues) return true
|
if (parameterText in knownValues) return true
|
||||||
if (UnitName.getErrorSeverity(parameterText, ruleset) == null) return true
|
if (UnitName.getErrorSeverity(parameterText, ruleset) == null) return true
|
||||||
@ -128,13 +121,8 @@ enum class UniqueParameterType(
|
|||||||
private val knownValues = setOf(
|
private val knownValues = setOf(
|
||||||
"Land", "Water", "Air",
|
"Land", "Water", "Air",
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
UniqueType.UniqueParameterErrorSeverity? {
|
UniqueType.UniqueParameterErrorSeverity? = getErrorSeverityForFilter(parameterText, ruleset)
|
||||||
val isKnown = MultiFilter.multiFilter(parameterText, {isKnownValue(it, ruleset)}, true)
|
|
||||||
if (isKnown) return null
|
|
||||||
return UniqueType.UniqueParameterErrorSeverity.PossibleFilteringUnique
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
||||||
if (parameterText in knownValues) return true
|
if (parameterText in knownValues) return true
|
||||||
@ -205,11 +193,8 @@ enum class UniqueParameterType(
|
|||||||
CivFilter("civFilter", Constants.cityStates) {
|
CivFilter("civFilter", Constants.cityStates) {
|
||||||
private val knownValues = setOf("AI player", "Human player")
|
private val knownValues = setOf("AI player", "Human player")
|
||||||
|
|
||||||
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset): UniqueType.UniqueParameterErrorSeverity? {
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
val isKnown = MultiFilter.multiFilter(parameterText, {isKnownValue(it, ruleset)}, true)
|
UniqueType.UniqueParameterErrorSeverity? = getErrorSeverityForFilter(parameterText, ruleset)
|
||||||
if (isKnown) return null
|
|
||||||
return UniqueType.UniqueParameterErrorSeverity.PossibleFilteringUnique
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
||||||
if (parameterText in knownValues) return true
|
if (parameterText in knownValues) return true
|
||||||
@ -222,14 +207,8 @@ enum class UniqueParameterType(
|
|||||||
NationFilter("nationFilter", Constants.cityStates) {
|
NationFilter("nationFilter", Constants.cityStates) {
|
||||||
private val knownValues = setOf(Constants.cityStates, "Major", "All")
|
private val knownValues = setOf(Constants.cityStates, "Major", "All")
|
||||||
|
|
||||||
override fun getErrorSeverity(
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
parameterText: String,
|
UniqueType.UniqueParameterErrorSeverity? = getErrorSeverityForFilter(parameterText, ruleset)
|
||||||
ruleset: Ruleset
|
|
||||||
): UniqueType.UniqueParameterErrorSeverity? {
|
|
||||||
val isKnown = MultiFilter.multiFilter(parameterText, {isKnownValue(it, ruleset)}, true)
|
|
||||||
if (isKnown) return null
|
|
||||||
return UniqueType.UniqueParameterErrorSeverity.PossibleFilteringUnique
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
||||||
if (parameterText in knownValues) return true
|
if (parameterText in knownValues) return true
|
||||||
@ -286,14 +265,8 @@ enum class UniqueParameterType(
|
|||||||
private val knownValues = mutableSetOf("All", "Building", "Buildings", "Wonder", "Wonders", "National Wonder", "World Wonder")
|
private val knownValues = mutableSetOf("All", "Building", "Buildings", "Wonder", "Wonders", "National Wonder", "World Wonder")
|
||||||
.apply { addAll(Stat.names()) }
|
.apply { addAll(Stat.names()) }
|
||||||
|
|
||||||
override fun getErrorSeverity(
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
parameterText: String,
|
UniqueType.UniqueParameterErrorSeverity? = getErrorSeverityForFilter(parameterText, ruleset)
|
||||||
ruleset: Ruleset
|
|
||||||
): UniqueType.UniqueParameterErrorSeverity? {
|
|
||||||
val isKnown = MultiFilter.multiFilter(parameterText, {isKnownValue(it, ruleset)}, true)
|
|
||||||
if (isKnown) return null
|
|
||||||
return UniqueType.UniqueParameterErrorSeverity.PossibleFilteringUnique
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
||||||
if (parameterText in knownValues) return true
|
if (parameterText in knownValues) return true
|
||||||
@ -330,11 +303,8 @@ enum class UniqueParameterType(
|
|||||||
) +
|
) +
|
||||||
ResourceType.values().map { it.name + " resource" }
|
ResourceType.values().map { it.name + " resource" }
|
||||||
|
|
||||||
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset): UniqueType.UniqueParameterErrorSeverity? {
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
val isKnown = MultiFilter.multiFilter(parameterText, {isKnownValue(it, ruleset)}, true)
|
UniqueType.UniqueParameterErrorSeverity? = getErrorSeverityForFilter(parameterText, ruleset)
|
||||||
if (isKnown) return null
|
|
||||||
return UniqueType.UniqueParameterErrorSeverity.PossibleFilteringUnique
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
||||||
return when (parameterText) {
|
return when (parameterText) {
|
||||||
@ -356,12 +326,9 @@ enum class UniqueParameterType(
|
|||||||
/** Implemented by [Tile.matchesFilter][com.unciv.logic.map.tile.Tile.matchesFilter] */
|
/** Implemented by [Tile.matchesFilter][com.unciv.logic.map.tile.Tile.matchesFilter] */
|
||||||
TileFilter("tileFilter", "Farm", "Anything that can be used either in an improvementFilter or in a terrainFilter can be used here, plus 'unimproved'", "Tile Filters") {
|
TileFilter("tileFilter", "Farm", "Anything that can be used either in an improvementFilter or in a terrainFilter can be used here, plus 'unimproved'", "Tile Filters") {
|
||||||
private val knownValues = setOf("unimproved", "All Road", "Great Improvement")
|
private val knownValues = setOf("unimproved", "All Road", "Great Improvement")
|
||||||
|
|
||||||
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
UniqueType.UniqueParameterErrorSeverity? {
|
UniqueType.UniqueParameterErrorSeverity? = getErrorSeverityForFilter(parameterText, ruleset)
|
||||||
val isKnown = MultiFilter.multiFilter(parameterText, {isKnownValue(it, ruleset)}, true)
|
|
||||||
if (isKnown) return null
|
|
||||||
return UniqueType.UniqueParameterErrorSeverity.PossibleFilteringUnique
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
||||||
if (parameterText in knownValues) return true
|
if (parameterText in knownValues) return true
|
||||||
@ -462,12 +429,9 @@ enum class UniqueParameterType(
|
|||||||
/** Implemented by [TileImprovement.matchesFilter][com.unciv.models.ruleset.tile.TileImprovement.matchesFilter] */
|
/** Implemented by [TileImprovement.matchesFilter][com.unciv.models.ruleset.tile.TileImprovement.matchesFilter] */
|
||||||
ImprovementFilter("improvementFilter", "All Road", null, "Improvement Filters") {
|
ImprovementFilter("improvementFilter", "All Road", null, "Improvement Filters") {
|
||||||
private val knownValues = setOf("All", "Improvement", "All Road", "Great Improvement", "Great")
|
private val knownValues = setOf("All", "Improvement", "All Road", "Great Improvement", "Great")
|
||||||
|
|
||||||
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
UniqueType.UniqueParameterErrorSeverity? {
|
UniqueType.UniqueParameterErrorSeverity? = getErrorSeverityForFilter(parameterText, ruleset)
|
||||||
val isKnown = MultiFilter.multiFilter(parameterText, {isKnownValue(it, ruleset)}, true)
|
|
||||||
if (isKnown) return null
|
|
||||||
return UniqueType.UniqueParameterErrorSeverity.PossibleFilteringUnique
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
override fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean {
|
||||||
if (parameterText in knownValues) return true
|
if (parameterText in knownValues) return true
|
||||||
@ -628,6 +592,12 @@ enum class UniqueParameterType(
|
|||||||
|
|
||||||
open fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean = false
|
open fun isKnownValue(parameterText: String, ruleset: Ruleset): Boolean = false
|
||||||
|
|
||||||
|
fun getErrorSeverityForFilter(parameterText: String, ruleset: Ruleset): UniqueType.UniqueParameterErrorSeverity? {
|
||||||
|
val isKnown = MultiFilter.multiFilter(parameterText, {isKnownValue(it, ruleset)}, true)
|
||||||
|
if (isKnown) return null
|
||||||
|
return UniqueType.UniqueParameterErrorSeverity.PossibleFilteringUnique
|
||||||
|
}
|
||||||
|
|
||||||
/** Pick this type when [TranslationFileWriter] tries to guess for an untyped [Unique] */
|
/** Pick this type when [TranslationFileWriter] tries to guess for an untyped [Unique] */
|
||||||
open fun isTranslationWriterGuess(parameterText: String, ruleset: Ruleset): Boolean =
|
open fun isTranslationWriterGuess(parameterText: String, ruleset: Ruleset): Boolean =
|
||||||
getErrorSeverity(parameterText, ruleset) == null
|
getErrorSeverity(parameterText, ruleset) == null
|
||||||
|
Loading…
Reference in New Issue
Block a user