diff --git a/1.6/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/1.6/Assemblies/WulaFallenEmpire.dll index 358fb8e1..d0761747 100644 Binary files a/1.6/1.6/Assemblies/WulaFallenEmpire.dll and b/1.6/1.6/Assemblies/WulaFallenEmpire.dll differ diff --git a/1.6/1.6/Defs/EventDefs/EventDef_Examples_HideWhenDisabled.xml b/1.6/1.6/Defs/EventDefs/EventDef_Examples_HideWhenDisabled.xml index 7682ff80..52eaf1ed 100644 --- a/1.6/1.6/Defs/EventDefs/EventDef_Examples_HideWhenDisabled.xml +++ b/1.6/1.6/Defs/EventDefs/EventDef_Examples_HideWhenDisabled.xml @@ -8,6 +8,19 @@
  • 这是一个用于演示新功能的测试事件。它包含多个选项,展示了不同的条件和可见性行为。当前机械族好感度: {MechanoidGoodwill}
  • + + +
  • + +
  • + TestVar + 1 +
  • + + 变量 TestVar 的值现在是 1,所以你看到了这段额外的描述。 + +
    +
  • diff --git a/Source/WulaFallenEmpire/EventSystem/Dialog_CustomDisplay.cs b/Source/WulaFallenEmpire/EventSystem/Dialog_CustomDisplay.cs index a3534e88..5d9b56cf 100644 --- a/Source/WulaFallenEmpire/EventSystem/Dialog_CustomDisplay.cs +++ b/Source/WulaFallenEmpire/EventSystem/Dialog_CustomDisplay.cs @@ -85,7 +85,20 @@ namespace WulaFallenEmpire HandleAction(def.immediateEffects); - // Format the description AFTER immediate effects have run + // Append conditional descriptions + if (!def.conditionalDescriptions.NullOrEmpty()) + { + foreach (var condDesc in def.conditionalDescriptions) + { + string reason; + if (AreConditionsMet(condDesc.conditions, out reason)) + { + selectedDescription += "\n\n" + condDesc.text; + } + } + } + + // Format the description AFTER immediate effects have run and conditional text is appended selectedDescription = FormatDescription(selectedDescription); } diff --git a/Source/WulaFallenEmpire/EventSystem/EventDef.cs b/Source/WulaFallenEmpire/EventSystem/EventDef.cs index afa8e058..eb35dc02 100644 --- a/Source/WulaFallenEmpire/EventSystem/EventDef.cs +++ b/Source/WulaFallenEmpire/EventSystem/EventDef.cs @@ -29,6 +29,8 @@ namespace WulaFallenEmpire public string backgroundImagePath; public List immediateEffects; public List dismissEffects; + public List conditionalDescriptions; + public override void PostLoad() { base.PostLoad(); @@ -71,4 +73,10 @@ namespace WulaFallenEmpire public List conditions; public List effects; } + + public class ConditionalDescription + { + public List conditions; + public string text; + } }