Deprecate old uniques

This commit is contained in:
yairm210 2024-04-01 12:08:06 +03:00
parent b37c24c177
commit ce72573504
4 changed files with 8 additions and 24 deletions

View File

@ -109,12 +109,6 @@ object BattleDamage {
if (strengthMalus != null) {
modifiers.add("Adjacent enemy units", strengthMalus.params[0].toInt())
}
// e.g., Mongolia - https://civilization.fandom.com/wiki/Mongolian_(Civ5)
if (enemy.getCivInfo().isCityState()
&& civInfo.hasUnique(UniqueType.StrengthBonusVsCityStates)
)
modifiers["vs [City-States]"] = 30
}
private fun addResourceLackingMalus(combatant: MapUnitCombatant, modifiers: Counter<String>) {

View File

@ -50,7 +50,6 @@ class RuinsManager(
if (civInfo.gameInfo.difficulty in ruinReward.excludedDifficulties) return false
val stateForConditionals = StateForConditionals(civInfo, unit = unit, tile = unit.getTile())
if (ruinReward.hasUnique(UniqueType.HiddenWithoutReligion, stateForConditionals) && !civInfo.gameInfo.isReligionEnabled()) return false
if (ruinReward.hasUnique(UniqueType.HiddenAfterGreatProphet, stateForConditionals) && civInfo.religionManager.greatProphetsEarned() > 0) return false
if (ruinReward.hasUnique(UniqueType.Unavailable, stateForConditionals)) return false
if (ruinReward.getMatchingUniques(UniqueType.OnlyAvailable, StateForConditionals.IgnoreConditionals)
.any { !it.conditionalsApply(stateForConditionals) }) return false

View File

@ -276,9 +276,6 @@ object Conditionals {
UniqueType.ConditionalNotAdjacentTo -> relevantTile?.isAdjacentTo(condition.params[0], relevantCiv) == false
UniqueType.ConditionalFightingInTiles ->
state.attackedTile?.matchesFilter(condition.params[0], relevantCiv) == true
UniqueType.ConditionalInTilesAnd ->
relevantTile != null && relevantTile!!.matchesFilter(condition.params[0], relevantCiv)
&& relevantTile!!.matchesFilter(condition.params[1], relevantCiv)
UniqueType.ConditionalNearTiles ->
relevantTile != null && relevantTile!!.getTilesInDistance(condition.params[0].toInt()).any {
it.matchesFilter(condition.params[1])
@ -310,12 +307,6 @@ object Conditionals {
&& relevantTile!!.neighbors.count {
it.matchesFilter(condition.params[2], relevantCiv)
} in condition.params[0].toInt()..condition.params[1].toInt()
UniqueType.ConditionalNeighborTilesAnd ->
relevantTile != null
&& relevantTile!!.neighbors.count {
it.matchesFilter(condition.params[2], relevantCiv)
&& it.matchesFilter(condition.params[3], relevantCiv)
} in condition.params[0].toInt()..condition.params[1].toInt()
UniqueType.ConditionalOnWaterMaps -> state.region?.continentID == -1
UniqueType.ConditionalInRegionOfType -> state.region?.type == condition.params[0]

View File

@ -368,8 +368,6 @@ enum class UniqueType(
Strength("[relativeAmount]% Strength", UniqueTarget.Unit, UniqueTarget.Global),
StrengthNearCapital("[relativeAmount]% Strength decreasing with distance from the capital", UniqueTarget.Unit, UniqueTarget.Global),
FlankAttackBonus("[relativeAmount]% to Flank Attack bonuses", UniqueTarget.Unit, UniqueTarget.Global),
@Deprecated("as of 4.10.3", ReplaceWith("[+30]% Strength <vs [City-States]>"))
StrengthBonusVsCityStates("+30% Strength when fighting City-State units and cities", UniqueTarget.Global),
StrengthForAdjacentEnemies("[relativeAmount]% Strength for enemy [combatantFilter] units in adjacent [tileFilter] tiles", UniqueTarget.Unit),
StrengthWhenStacked("[relativeAmount]% Strength when stacked with [mapUnitFilter]", UniqueTarget.Unit), // candidate for conditional!
StrengthBonusInRadius("[relativeAmount]% Strength bonus for [mapUnitFilter] units within [amount] tiles", UniqueTarget.Unit),
@ -729,11 +727,7 @@ enum class UniqueType(
/////// tile conditionals
ConditionalNeighborTiles("with [amount] to [amount] neighboring [tileFilter] tiles", UniqueTarget.Conditional),
@Deprecated("as of 4.10.3", ReplaceWith("with [amount] to [amount] neighboring [{tileFilter} {tileFilter}] tiles"))
ConditionalNeighborTilesAnd("with [amount] to [amount] neighboring [tileFilter] [tileFilter] tiles", UniqueTarget.Conditional),
ConditionalInTiles("in [tileFilter] tiles", UniqueTarget.Conditional),
@Deprecated("as of 4.10.3", ReplaceWith("in [{tileFilter} {tileFilter}] tiles"))
ConditionalInTilesAnd("in [tileFilter] [tileFilter] tiles", UniqueTarget.Conditional),
ConditionalInTilesNot("in tiles without [tileFilter]", UniqueTarget.Conditional),
ConditionalAdjacentTo("in tiles adjacent to [tileFilter]", UniqueTarget.Conditional),
ConditionalNotAdjacentTo("in tiles not adjacent to [tileFilter]", UniqueTarget.Conditional),
@ -856,8 +850,6 @@ enum class UniqueType(
UniqueTarget.Unit, UniqueTarget.Building, UniqueTarget.Ruins, UniqueTarget.Tutorial,
flags = UniqueFlag.setOfHiddenToUsers),
@Deprecated("as of 4.10.3", ReplaceWith("Unavailable <after generating a Great Prophet>"))
HiddenAfterGreatProphet("Hidden after generating a Great Prophet", UniqueTarget.Ruins),
HiddenWithoutVictoryType("Hidden when [victoryType] Victory is disabled", UniqueTarget.Building, UniqueTarget.Unit, flags = UniqueFlag.setOfHiddenToUsers),
HiddenFromCivilopedia("Will not be displayed in Civilopedia", *UniqueTarget.Displayable, flags = UniqueFlag.setOfHiddenToUsers),
ModifierHiddenFromUsers("hidden from users", UniqueTarget.MetaModifier),
@ -892,6 +884,14 @@ enum class UniqueType(
///////////////////////////////////////////// region 99 DEPRECATED AND REMOVED /////////////////////////////////////////////
@Deprecated("as of 4.10.3", ReplaceWith("[+30]% Strength <vs [City-States]>"))
StrengthBonusVsCityStates("+30% Strength when fighting City-State units and cities", UniqueTarget.Global),
@Deprecated("as of 4.10.3", ReplaceWith("with [amount] to [amount] neighboring [{tileFilter} {tileFilter}] tiles"))
ConditionalNeighborTilesAnd("with [amount] to [amount] neighboring [tileFilter] [tileFilter] tiles", UniqueTarget.Conditional),
@Deprecated("as of 4.10.3", ReplaceWith("in [{tileFilter} {tileFilter}] tiles"))
ConditionalInTilesAnd("in [tileFilter] [tileFilter] tiles", UniqueTarget.Conditional),
@Deprecated("as of 4.10.3", ReplaceWith("Unavailable <after generating a Great Prophet>"), DeprecationLevel.ERROR)
HiddenAfterGreatProphet("Hidden after generating a Great Prophet", UniqueTarget.Ruins),
@Deprecated("as of 4.9.0",ReplaceWith("[relativeAmount]% construction time for [All] improvements"), DeprecationLevel.ERROR)
TileImprovementTime("[relativeAmount]% tile improvement construction time", UniqueTarget.Global, UniqueTarget.Unit),
@Deprecated("as of 4.8.9", ReplaceWith("Can Spread Religion <[amount] times> <after which this unit is consumed>\" OR \"Can remove other religions from cities <in [Friendly] tiles> <once> <after which this unit is consumed>"), DeprecationLevel.ERROR)