All relevant unit filtering moved to baseUnit, so we can filter on constructions as well

This commit is contained in:
Yair Morgenstern 2020-12-13 09:19:45 +02:00
parent bbcf5ffed7
commit 7731211b09
2 changed files with 13 additions and 8 deletions

View File

@ -720,15 +720,8 @@ class MapUnit {
}
fun matchesFilter(filter: String): Boolean {
if (filter == type.name) return true
if (filter == name) return true
if (filter == "All") return true
if (baseUnit.matchesFilter(filter)) return true
if ((filter == "Wounded" || filter == "wounded units") && health < 100) return true
if ((filter == "Land" || filter == "land units") && type.isLandUnit()) return true
if ((filter == "Water" || filter == "water units") && type.isWaterUnit()) return true
if ((filter == "Air" || filter == "air units") && type.isAirUnit()) return true
if (filter == "non-air" && !type.isAirUnit()) return true
if ((filter == "military" || filter == "military units") && type.isMilitary()) return true
if (hasUnique(filter)) return true
if ((filter == "Barbarians" || filter == "Barbarian") && civInfo.isBarbarian()) return true

View File

@ -211,4 +211,16 @@ class BaseUnit : INamed, IConstruction {
return if (replaces == null) this
else ruleset.units[replaces!!]!!
}
fun matchesFilter(filter:String):Boolean{
if (filter == unitType.name) return true
if (filter == name) return true
if (filter == "All") return true
if ((filter == "Land" || filter == "land units") && unitType.isLandUnit()) return true
if ((filter == "Water" || filter == "water units") && unitType.isWaterUnit()) return true
if ((filter == "Air" || filter == "air units") && unitType.isAirUnit()) return true
if (filter == "non-air" && !unitType.isAirUnit()) return true
if ((filter == "military" || filter == "military units") && unitType.isMilitary()) return true
return false
}
}