mirror of
https://github.com/yairm210/Unciv.git
synced 2025-09-26 05:14:32 -04:00
Add unique to show construction when unbuildable (#12313)
This commit is contained in:
parent
2abe72df6e
commit
74806e8eec
@ -244,6 +244,8 @@ class Building : RulesetStatsObject(), INonPerpetualConstruction {
|
|||||||
if (cityConstructions.city.civ.civConstructions.countConstructedObjects(this) >= unique.params[0].toInt())
|
if (cityConstructions.city.civ.civConstructions.countConstructedObjects(this) >= unique.params[0].toInt())
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
if (hasUnique(UniqueType.ShowsWhenUnbuilable, StateForConditionals(cityConstructions.city)))
|
||||||
|
return true
|
||||||
|
|
||||||
val rejectionReasons = getRejectionReasons(cityConstructions)
|
val rejectionReasons = getRejectionReasons(cityConstructions)
|
||||||
|
|
||||||
|
@ -955,6 +955,7 @@ enum class UniqueType(
|
|||||||
UniqueTarget.Promotion, UniqueTarget.Policy, flags = UniqueFlag.setOfHiddenToUsers),
|
UniqueTarget.Promotion, UniqueTarget.Policy, flags = UniqueFlag.setOfHiddenToUsers),
|
||||||
|
|
||||||
HiddenFromCivilopedia("Will not be displayed in Civilopedia", *UniqueTarget.Displayable, flags = UniqueFlag.setOfHiddenToUsers),
|
HiddenFromCivilopedia("Will not be displayed in Civilopedia", *UniqueTarget.Displayable, flags = UniqueFlag.setOfHiddenToUsers),
|
||||||
|
ShowsWhenUnbuilable("Shown while unbuilable", UniqueTarget.Building, UniqueTarget.Unit, flags = UniqueFlag.setOfHiddenToUsers),
|
||||||
ModifierHiddenFromUsers("hidden from users", UniqueTarget.MetaModifier),
|
ModifierHiddenFromUsers("hidden from users", UniqueTarget.MetaModifier),
|
||||||
ForEveryCountable("for every [countable]", UniqueTarget.MetaModifier),
|
ForEveryCountable("for every [countable]", UniqueTarget.MetaModifier),
|
||||||
ForEveryAmountCountable("for every [amount] [countable]", UniqueTarget.MetaModifier),
|
ForEveryAmountCountable("for every [amount] [countable]", UniqueTarget.MetaModifier),
|
||||||
|
@ -163,6 +163,8 @@ class BaseUnit : RulesetObject(), INonPerpetualConstruction {
|
|||||||
fun getDisbandGold(civInfo: Civilization) = getBaseGoldCost(civInfo, null).toInt() / 20
|
fun getDisbandGold(civInfo: Civilization) = getBaseGoldCost(civInfo, null).toInt() / 20
|
||||||
|
|
||||||
override fun shouldBeDisplayed(cityConstructions: CityConstructions): Boolean {
|
override fun shouldBeDisplayed(cityConstructions: CityConstructions): Boolean {
|
||||||
|
if (hasUnique(UniqueType.ShowsWhenUnbuilable, StateForConditionals(cityConstructions.city)))
|
||||||
|
return true
|
||||||
val rejectionReasons = getRejectionReasons(cityConstructions)
|
val rejectionReasons = getRejectionReasons(cityConstructions)
|
||||||
|
|
||||||
if (rejectionReasons.none { !it.shouldShow }) return true
|
if (rejectionReasons.none { !it.shouldShow }) return true
|
||||||
|
Loading…
x
Reference in New Issue
Block a user