perf(cpu): Optimized Terrain.matchesSingleFilter

This commit is contained in:
yairm210 2025-09-07 22:29:59 +03:00
parent 90dd2e0ea1
commit 4754ac3040

View File

@ -179,18 +179,19 @@ class Terrain : RulesetStatsObject() {
@Readonly
fun matchesSingleFilter(filter: String): Boolean {
return when (filter) {
in Constants.all -> true
name -> true
"all", "All" -> true
"Terrain" -> true
"Open terrain" -> !isRough()
"Rough terrain" -> isRough()
type.name -> true
"Natural Wonder" -> type == TerrainType.NaturalWonder
"Terrain Feature" -> type == TerrainType.TerrainFeature
else -> when(filter){ // non-constants
name -> true
type.name -> true
else -> false
}
}
}
fun setTransients() {
damagePerTurn = getMatchingUniques(UniqueType.DamagesContainingUnits).sumOf { it.params[0].toInt() }