diff --git a/core/src/com/unciv/logic/civilization/TechManager.kt b/core/src/com/unciv/logic/civilization/TechManager.kt index 73a44e05df..82612f400b 100644 --- a/core/src/com/unciv/logic/civilization/TechManager.kt +++ b/core/src/com/unciv/logic/civilization/TechManager.kt @@ -341,6 +341,11 @@ class TechManager : IsPartOfGameInfoSerialization { for (era in erasPassed) for (unique in era.uniqueObjects) UniqueTriggerActivation.triggerCivwideUnique(unique, civInfo) + + val eraNames = erasPassed.map { it.name }.toHashSet() + for (unique in civInfo.getTriggeredUniques(UniqueType.TriggerUponEnteringEra)) + if (unique.conditionals.any {it.type == UniqueType.TriggerUponEnteringEra && it.params[0] in eraNames}) + UniqueTriggerActivation.triggerCivwideUnique(unique, civInfo) } for (unique in civInfo.getTriggeredUniques(UniqueType.TriggerUponResearch)) diff --git a/core/src/com/unciv/models/ruleset/unique/UniqueType.kt b/core/src/com/unciv/models/ruleset/unique/UniqueType.kt index a762745483..d8de0fb8e9 100644 --- a/core/src/com/unciv/models/ruleset/unique/UniqueType.kt +++ b/core/src/com/unciv/models/ruleset/unique/UniqueType.kt @@ -700,10 +700,10 @@ enum class UniqueType(val text: String, vararg targets: UniqueTarget, val flags: ///////////////////////////////////////// region TRIGGERS ///////////////////////////////////////// TriggerUponResearch("upon discovering [tech]", UniqueTarget.TriggerCondition), + TriggerUponEnteringEra("upon entering the [era]", UniqueTarget.TriggerCondition), TriggerUponAdoptingPolicy("upon adopting [policy]", UniqueTarget.TriggerCondition), TriggerUponDeclaringWar("upon declaring war", UniqueTarget.TriggerCondition), TriggerUponEnteringGoldenAge("upon entering a Golden Age", UniqueTarget.TriggerCondition), - //endregion ///////////////////////////////////////////// region META ///////////////////////////////////////////// diff --git a/docs/Modders/uniques.md b/docs/Modders/uniques.md index 488fe526e4..c08909ed85 100644 --- a/docs/Modders/uniques.md +++ b/docs/Modders/uniques.md @@ -1875,6 +1875,11 @@ Simple unique parameters are explained by mouseover. Complex parameters are expl Applicable to: TriggerCondition +??? example "upon entering the [era]" + Example: "upon entering the [Ancient era]" + + Applicable to: TriggerCondition + ??? example "upon adopting [policy]" Example: "upon adopting [Oligarchy]"