From 1d97ededbd585c2a64798397c4c62efb712219a0 Mon Sep 17 00:00:00 2001 From: Why-not-now <81090788+Why-not-now@users.noreply.github.com> Date: Fri, 22 Dec 2023 16:08:21 +0800 Subject: [PATCH] Update units ruleset validation (#10781) * Update units ruleset validation Removed check for 0 rangedAttack ranged units. Definition here: https://github.com/yairm210/Unciv/blob/75af329b16eb9f3654db4faf5664948ebd266b26/core/src/com/unciv/models/ruleset/unit/BaseUnit.kt#L349 Renamed obseleteTech to upgradeTech * Undo renaming * Removed duplicate check See https://github.com/yairm210/Unciv/blob/93224f149135ba47f043ce73a3134fcaa1c4010c/core/src/com/unciv/models/ruleset/unit/BaseUnit.kt#L51-L53 --------- Co-authored-by: Yair Morgenstern --- .../unciv/models/ruleset/validation/RulesetValidator.kt | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/core/src/com/unciv/models/ruleset/validation/RulesetValidator.kt b/core/src/com/unciv/models/ruleset/validation/RulesetValidator.kt index 7ad3746e68..3d2d8be1d4 100644 --- a/core/src/com/unciv/models/ruleset/validation/RulesetValidator.kt +++ b/core/src/com/unciv/models/ruleset/validation/RulesetValidator.kt @@ -669,10 +669,8 @@ class RulesetValidator(val ruleset: Ruleset) { private fun checkUnitRulesetInvariant(unit: BaseUnit, lines: RulesetErrorList) { if (unit.upgradesTo == unit.name || (unit.upgradesTo != null && unit.upgradesTo == unit.replaces)) lines += "${unit.name} upgrades to itself!" - if (!unit.isCivilian() && unit.strength == 0) + if (unit.isMilitary() && unit.strength == 0) // Should only match ranged units with 0 strength lines += "${unit.name} is a military unit but has no assigned strength!" - if (unit.isRanged() && unit.rangedStrength == 0 && !unit.hasUnique(UniqueType.CannotAttack)) - lines += "${unit.name} is a ranged unit but has no assigned rangedStrength!" } /** Collects all RulesetSpecific checks for a BaseUnit */ @@ -683,9 +681,6 @@ class RulesetValidator(val ruleset: Ruleset) { for (obsoleteTech: String in unit.techsAtWhichNoLongerAvailable()) if (!ruleset.technologies.containsKey(obsoleteTech)) lines += "${unit.name} obsoletes at tech ${obsoleteTech} which does not exist!" - for (obsoleteTech: String in unit.techsAtWhichAutoUpgradeInProduction()) - if (!ruleset.technologies.containsKey(obsoleteTech)) - lines += "${unit.name} upgrades at tech ${obsoleteTech} which does not exist!" if (unit.upgradesTo != null && !ruleset.units.containsKey(unit.upgradesTo!!)) lines += "${unit.name} upgrades to unit ${unit.upgradesTo} which does not exist!"