mirror of
https://github.com/yairm210/Unciv.git
synced 2025-07-13 09:18:43 +07:00
Fixed endless loop for mod checker
This commit is contained in:
@ -75,7 +75,7 @@ enum class UniqueParameterType(
|
|||||||
private val knownValues = setOf("Wounded", Constants.barbarians, "City-State", "Embarked", "Non-City")
|
private val knownValues = setOf("Wounded", Constants.barbarians, "City-State", "Embarked", "Non-City")
|
||||||
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
UniqueType.UniqueComplianceErrorSeverity? {
|
UniqueType.UniqueComplianceErrorSeverity? {
|
||||||
if ('{' in parameterText) // "{filter} {filter}" for and logic
|
if (parameterText.startsWith('{')) // "{filter} {filter}" for and logic
|
||||||
return parameterText.filterCompositeLogic({ getErrorSeverity(it, ruleset) }) { a, b -> maxOf(a, b) }
|
return parameterText.filterCompositeLogic({ getErrorSeverity(it, ruleset) }) { a, b -> maxOf(a, b) }
|
||||||
if (parameterText in knownValues) return null
|
if (parameterText in knownValues) return null
|
||||||
if (ruleset.unitPromotions.values.any { it.hasUnique(parameterText) })
|
if (ruleset.unitPromotions.values.any { it.hasUnique(parameterText) })
|
||||||
@ -89,7 +89,7 @@ enum class UniqueParameterType(
|
|||||||
BaseUnitFilter("baseUnitFilter", "Melee") {
|
BaseUnitFilter("baseUnitFilter", "Melee") {
|
||||||
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
override fun getErrorSeverity(parameterText: String, ruleset: Ruleset):
|
||||||
UniqueType.UniqueComplianceErrorSeverity? {
|
UniqueType.UniqueComplianceErrorSeverity? {
|
||||||
if ('{' in parameterText) // "{filter} {filter}" for and logic
|
if (parameterText.startsWith('{')) // "{filter} {filter}" for and logic
|
||||||
return parameterText.filterCompositeLogic({ getErrorSeverity(it, ruleset) }) { a, b -> maxOf(a, b) }
|
return parameterText.filterCompositeLogic({ getErrorSeverity(it, ruleset) }) { a, b -> maxOf(a, b) }
|
||||||
if (UnitName.getErrorSeverity(parameterText, ruleset) == null) return null
|
if (UnitName.getErrorSeverity(parameterText, ruleset) == null) return null
|
||||||
if (ruleset.units.values.any { it.uniques.contains(parameterText) }) return null
|
if (ruleset.units.values.any { it.uniques.contains(parameterText) }) return null
|
||||||
|
Reference in New Issue
Block a user