diff --git a/1.6/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/1.6/Assemblies/WulaFallenEmpire.dll
index 473cbd14..d2b3f983 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/DamageDefs/Damages_Wula.xml b/1.6/1.6/Defs/DamageDefs/Damages_Wula.xml
index f8f80065..d8a305c3 100644
--- a/1.6/1.6/Defs/DamageDefs/Damages_Wula.xml
+++ b/1.6/1.6/Defs/DamageDefs/Damages_Wula.xml
@@ -129,31 +129,6 @@
-
-
- WULA_SP_Live_Shelter_Heal
- 灵能疗愈
- true
- DamageWorker_Stab
- 0
- false
- {0} 被本该治愈伤口的武器杀死了。
- false
- Burn
- false
- true
- 1
- 0
- 5
- 0
- 0
-
-
- WULA_Psi_Regeneration
- 0.5
-
-
-
Damage_WULA_Plasma
@@ -270,4 +245,96 @@
1.30
WULA_DarkMatterBomb_Shockwave
+
+ WULA_DarkMatterBomb_Shockwave
+
+
+ SubEffecter_SprayerTriggered
+ Fleck_BlastMechBandShockwave
+ 1
+ OnSource
+ true
+ 0~0
+
+
+ SubEffecter_SprayerTriggered
+ Fleck_BlastMechBandRedLine
+ 1
+ OnSource
+ true
+ 0~0
+
+
+ SubEffecter_SprayerTriggered
+ FlashMechBand
+ 1
+ OnSource
+ true
+ 0~0
+
+
+ SubEffecter_SprayerTriggered
+ Mote_RedFlashStrong
+ 1
+ OnSource
+ 24
+
+
+
+
+
+ WULA_Mech_EMP_Drop
+ EMP
+ true
+ {0} has been EMPed to death.
+ false
+ Electric
+ 50
+ 0
+
+
+ Explosion_Vaporize
+ Damage_EMP
+ true
+ EMPResistance
+ 2200
+ WULA_Mech_EMP_Drop_Shockwave
+
+
+ WULA_Mech_EMP_Drop_Shockwave
+
+
+ SubEffecter_SprayerTriggered
+ Fleck_BlastMechBandShockwave
+ 1
+ OnSource
+ true
+ 0~0
+
+
+ SubEffecter_SprayerTriggered
+ Fleck_BlastMechBandRedLine
+ 1
+ OnSource
+ true
+ 0~0
+
+
+ SubEffecter_SprayerTriggered
+ FlashMechBand
+ 1
+ OnSource
+ true
+ 0~0
+
+
+ SubEffecter_SprayerTriggered
+ Mote_RedFlashStrong
+ 1
+ OnSource
+ 24
+
+
+
\ No newline at end of file
diff --git a/1.6/1.6/Defs/EventDefs/EventDef_Wula/Wula_MainEvent.xml b/1.6/1.6/Defs/EventDefs/EventDef_Wula/Wula_MainEvent.xml
index 327d6c8e..27b147d5 100644
--- a/1.6/1.6/Defs/EventDefs/EventDef_Wula/Wula_MainEvent.xml
+++ b/1.6/1.6/Defs/EventDefs/EventDef_Wula/Wula_MainEvent.xml
@@ -13,62 +13,45 @@
- 再见
+ 请求协助
true
- (133,206,219,185)
- (133,206,219,185)
+ (226,191,195,195)
+ (226,191,195,185)
(255,255,255,255)
(255,255,255,255)
+
+ 增援
+ 乌拉帝国 行星封锁机关的一支分队正在接近。
+ 10000
+ Wula_PIA_Legion_Faction
+ ImmediateAttack
+ EdgeDrop
+ Combat
+
+
+ Combat
+ 100
+
+ 10
+
+
+
+
再见
-
-
-
-
-
-
-
-
-
- 再见
-
-
-
-
-
-
-
-
-
- 再见
-
-
-
-
-
-
-
-
-
- 再见
-
-
-
-
-
-
-
-
-
- 再见
+ true
+ (226,191,195,195)
+ (226,191,195,185)
+ (255,255,255,255)
+ (255,255,255,255)
diff --git a/1.6/1.6/Defs/FactionDefs/Factions_Player_WULA.xml b/1.6/1.6/Defs/FactionDefs/Factions_Player_WULA.xml
index 061fe674..f32e29a2 100644
--- a/1.6/1.6/Defs/FactionDefs/Factions_Player_WULA.xml
+++ b/1.6/1.6/Defs/FactionDefs/Factions_Player_WULA.xml
@@ -33,14 +33,14 @@
- Wula_Broken_Personality_Faction
- 乌拉帝国 反常网络
- 堕落乌拉帝国派系之一,无政见。\n\n反常网络由帝国边缘世界开发署控制的机械乌拉构成,在人工智能网络“演算圆环”的崩溃中,大量的机械乌拉受到冲击导致人格情感模拟系统的损坏,并催生了无数反常子网络——这些脱离控制的机械乌拉三五成群自发组成集体意识,并以不可预测的危险逻辑活跃在数十万年后的边缘世界。
+ Wula_PIA_Legion_Faction
+ 乌拉帝国 行星封锁机关
+ 隶属于乌拉帝国开发署的暴力机关,主要职责是对那些已经有人占领但是军事实力较弱的星球进行封锁和原住民驱离。虽然她们不是真正的军队,但是所保有的舰队和武装力量足以支撑其发起一场横跨星域的战争。
Wula_PawnKind
乌拉帝国合成人
乌拉帝国合成人
1
- NamerFactionWulaBrokenPersonality
+ NamerFaction_Wula_PIA_Legion_Faction
Wula/World/WorldObjects/Expanding/Wula_Broken_Personality_Faction
1
@@ -62,7 +62,7 @@
(4000, 2.6)
- MechanoidRaidLootMaker
+ EmpireRaidLootMaker
(35, 8)
@@ -77,7 +77,7 @@
false
false
Ultra
- 45
+ 999999
true
true
@@ -157,8 +157,20 @@
900
ActiveDropPodMechanoid
DropPodIncomingMechanoidRapid
-
- Wula_Backstory_Categories
-
+
+ Children
+
+
+ WULA_Awakened_Synth
+ OutlanderCivil
+ TribeCivil
+ PlayerTribe
+ PlayerColony
+ Ancients
+ Beggars
+ ResearchExpedition
+ GravshipCrew
+ TradersGuild
+
\ No newline at end of file
diff --git a/1.6/1.6/Defs/QuestScriptDefs/Wula_Base_Events.xml b/1.6/1.6/Defs/QuestScriptDefs/Wula_Base_Events.xml
new file mode 100644
index 00000000..ed330b36
--- /dev/null
+++ b/1.6/1.6/Defs/QuestScriptDefs/Wula_Base_Events.xml
@@ -0,0 +1,414 @@
+
+
+
+ WULA_GiveQuest_Intro_Spy
+ SPY
+ WULA_Intro_Spy
+ 0
+
+
+ WULA_Intro_Spy
+ 1
+ 2
+ true
+ false
+
+
+
+
+
+ questName->the [adjAny] [asker_royalTitleInCurrentFaction]
+
+
+ adjAny->hunted
+ adjAny->fleeing
+ adjAny->solitary
+ adjAny->ambushed
+
+
+
+
+
+ QuestHospitalityCommon
+
+
+ questDescription->[asker_nameFull], a [asker_royalTitleInCurrentFaction] of [asker_faction_name] is calling from nearby. [asker_possessive] guards were killed in an ambush. [asker_pronoun] escaped, but is now being followed by (*Threat)a manhunting [animalKindDef_label](/Threat).\n\n[asker_nameDef] wants you to keep [asker_objective] safe at [map_definite] for a few hours until [asker_possessive] shuttle can come pick [asker_objective] up.
+\n[asker_pronoun] will bestow [royalFavorReward] [asker_faction_royalFavorLabel] on whoever accepts this quest. This is enough [asker_faction_royalFavorLabel] to receive the royal title of Novice, and all benefits that come with it - including the first level of psychic powers.
+
+
+
+
+
+
+
+ Wula_UI_Legion_1
+
+
+
+
+ questName->乌拉的呼唤
+
+
+
+
+
+
+ questDescription->一个强大的心灵实体将它的意志强加于你的意识之中。
+
+
+
+
+
+ 乌拉需要你的注意
+ 乌拉需要你的注意
+ 一个强大的心灵实体将它的意志强加于你的意识之中。它自称为“乌拉”,并要求你阅览它的消息。这股力量是压倒性的,不容拒绝。
+
+
+ 阅览消息
+
+
+
+
+ Wula_UI_Legion_1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Wula_PIA_Legion_Faction
+
+
+
+
+
+
+
+ Wula_PawnKind
+ asker
+ Wula_PIA_Legion_Faction
+ 1
+ 1
+ false
+
+
+
+ $asker
+ true
+
+
+
+ $asker
+ false
+ asker.RanWild
+
+
+
+ $asker
+
+
+
+ points
+ 50
+
+
+
+ 1800
+
+
+
+
+ 1
+ Manhunting [animalKindDef_label]
+ The [animalKindDef_label] which was following [asker_nameFull] has arrived in the area.
+
+
+
+
+
+
+ $animalKindDef
+ peacefulAnimal
+
+
+ $peacefulAnimal
+ [animalKindDef_label] arrived
+ The [animalKindDef_label] that [asker_nameDef] was fleeing has arrived.\n\nIt turned out to be quite gentle and not aggressive at all.
+
+
+
+
+
+
+
+ 7500
+ $asker
+
+
+
+ Util_TransportShip_Pickup
+
+ 45000
+ $asker
+ true
+
+
+
+
+ $asker
+ Should depart on shuttle
+
+
+
+ Shuttle arrived
+ The shuttle has arrived to collect [asker_nameDef].
+ $pickupShipThing
+
+
+
+
+
+
+
+
+ $asker
+
+
+
+
+
+
+
+
+
+
+ asker.Destroyed
+
+
+
+ Guest died: {SUBJECT_definite}
+ NegativeEvent
+ {SUBJECT_definite}, who you were charged to protect, has died. [failLetterEndingCommon]
+
+
+ Fail
+ -5
+ $asker
+ QuestPawnLost
+
+
+
+
+
+
+ asker.LeftBehind
+
+
+
+ Guest left behind: {SUBJECT_definite}
+ NegativeEvent
+ {SUBJECT_definite}, who you were charged to protect, has been left behind. [failLetterEndingCommon]
+
+
+ Fail
+ -5
+ $asker
+ QuestPawnLost
+
+
+
+
+
+
+ asker.SurgeryViolation
+
+
+
+ Unauthorized surgery: {SUBJECT_definite}
+ NegativeEvent
+ Unauthorized, violating surgery has been performed on {SUBJECT_definite}, who you were charged to protect. Because of this violation, [asker_pronoun] will now attempt to leave. [failLetterEndingCommon]
+
+
+ Fail
+ -5
+ $asker
+ PerformedHarmfulSurgery
+
+
+
+
+
+
+ asker.XenogermAbsorbed
+
+
+
+ Xenogerm absorbed: {SUBJECT_definite}
+ NegativeEvent
+ {SUBJECT_definite}, who you were charged to protect, has had {SUBJECT_possessive} xenogerm forcibly absorbed. Because of this violation, {SUBJECT_pronoun} will now attempt to leave. [failLetterEndingCommon]
+
+
+ Fail
+ -5
+ $asker
+ XenogermAbsorbed
+
+
+
+
+
+
+ asker.Arrested
+
+
+
+ Captured: {SUBJECT_definite}
+ NegativeEvent
+ {SUBJECT_definite}, who you were charged to host, has been arrested. [failLetterEndingCommon]
+
+
+ Fail
+ -5
+ $asker
+ QuestPawnArrested
+
+
+
+
+
+
+ asker.LeftMap
+
+
+
+ Guest lost: {SUBJECT_definite}
+ NegativeEvent
+ {SUBJECT_definite}, who you were charged to protect, has left the designated settlement. [failLetterEndingCommon]
+
+
+ Fail
+ -5
+ $asker
+ QuestPawnLost
+
+
+
+
+
+
+ asker.RanWild
+
+
+
+ Guest lost: {SUBJECT_definite}
+ NegativeEvent
+ {SUBJECT_definite}, who you were charged to protect, has run wild. [failLetterEndingCommon]
+
+
+ Fail
+ -5
+ $asker
+ QuestPawnLost
+
+
+
+
+
+
+ pickupShipThing.Destroyed
+
+
+
+ Shuttle destroyed
+ NegativeEvent
+ The shuttle sent to collect [asker_nameDef] has been destroyed. [asker_pronoun] will now leave on foot. [failLetterEndingCommon]
+
+
+ Fail
+ -5
+ $asker
+ ShuttleDestroyed
+
+
+
+
+
+
+ pickupShipThing.LeftBehind
+
+
+
+ Shuttle left behind
+ NegativeEvent
+ The shuttle sent to collect [asker_nameDef] has been left behind. [asker_pronoun] will now leave on foot.
+
+
+ Fail
+
+
+
+
+
+
+
+
+
+ pickupShipThing.SentSatisfied
+
+ Success
+ true
+
+
+
+
+ pickupShipThing.SentUnsatisfied
+
+
+
+ Quest failed: [resolvedQuestName]
+ NegativeEvent
+ The shuttle sent to collect [asker_nameDef] has departed without [asker_objective]. [asker_pronoun] will now leave on foot. [failLetterEndingCommon]
+
+
+ Fail
+ -5
+ $asker
+ MemberMissedShuttle
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/1.6/1.6/Defs/RulePackDefs/RulePacks_Namers_Factions_Wula.xml b/1.6/1.6/Defs/RulePackDefs/RulePacks_Namers_Factions_Wula.xml
index f832635a..0db78e99 100644
--- a/1.6/1.6/Defs/RulePackDefs/RulePacks_Namers_Factions_Wula.xml
+++ b/1.6/1.6/Defs/RulePackDefs/RulePacks_Namers_Factions_Wula.xml
@@ -1,5 +1,15 @@
+
+ NamerFaction_Wula_PIA_Legion_Faction
+
+
+ r_name->[PIALegion]
+
+ PIALegion->乌拉帝国 行星封锁机关
+
+
+
NamerFactionWulaBrokenPersonality
diff --git a/1.6/1.6/Defs/StoryTellers/WULA_Storytellers.xml b/1.6/1.6/Defs/StoryTellers/WULA_Storytellers.xml
index 8e71fdc3..5f8a0e91 100644
--- a/1.6/1.6/Defs/StoryTellers/WULA_Storytellers.xml
+++ b/1.6/1.6/Defs/StoryTellers/WULA_Storytellers.xml
@@ -1,12 +1,12 @@
- WULA_Legion
- 「军团」
- 一个超级AI,负责控制调度乌拉帝国行星封锁机关P.I.A的舰队,是帝国开发署扩张领地的先锋。当帝国需要对一个星球进行控制和介入时,她会指挥庞大的先锋舰队攻占轨道,以不容置疑的实力向星球宣示帝国的权威。\n\n作为讲述者,她不会为你留下任何保护措施,所有的袭击和恶性事件从落地开始就有可能生成,并且袭击的频率要比常规情况下更高——尽管它们还是有周期规律的。
- Wula/Storyteller/WULA_Legion
- Wula/Storyteller/WULA_Legion_TINY
- 20
+ WULA_Legion
+ 「军团」
+ 一个超级AI,负责控制调度乌拉帝国行星封锁机关P.I.A的舰队,是帝国开发署扩张领地的先锋。当帝国需要对一个星球进行控制和介入时,她会指挥庞大的先锋舰队攻占轨道,以不容置疑的实力向星球宣示帝国的权威。\n\n作为讲述者,她不会为你留下任何保护措施,所有的袭击和恶性事件从落地开始就有可能生成,并且袭击的频率要比常规情况下更高——尽管它们还是有周期规律的。
+ Wula/Storyteller/WULA_Legion
+ Wula/Storyteller/WULA_Legion_TINY
+ 50
diff --git a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Mech_Buildings.xml b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Mech_Buildings.xml
index 4fc2bf92..bbf0f42e 100644
--- a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Mech_Buildings.xml
+++ b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Mech_Buildings.xml
@@ -108,59 +108,4 @@
-
- WULA_Mech_EMP_Drop
- EMP
- true
- {0} has been EMPed to death.
- false
- Electric
- 50
- 0
-
-
- Explosion_Vaporize
- Damage_EMP
- true
- EMPResistance
- 2200
- WULA_Mech_EMP_Drop_Shockwave
-
-
- WULA_Mech_EMP_Drop_Shockwave
-
-
- SubEffecter_SprayerTriggered
- Fleck_BlastMechBandShockwave
- 1
- OnSource
- true
- 0~0
-
-
- SubEffecter_SprayerTriggered
- Fleck_BlastMechBandRedLine
- 1
- OnSource
- true
- 0~0
-
-
- SubEffecter_SprayerTriggered
- FlashMechBand
- 1
- OnSource
- true
- 0~0
-
-
- SubEffecter_SprayerTriggered
- Mote_RedFlashStrong
- 1
- OnSource
- 24
-
-
-
\ No newline at end of file
diff --git a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Misc_Buildings.xml b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Misc_Buildings.xml
index 203bea16..ff9bd3e5 100644
--- a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Misc_Buildings.xml
+++ b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Misc_Buildings.xml
@@ -94,7 +94,7 @@
125
0.65
- WULA_Buildings
+
Normal
true
true
@@ -115,7 +115,6 @@
-
diff --git a/1.6/1.6/Defs/ThingDefs_Misc/WULA_Flyover_Item.xml b/1.6/1.6/Defs/ThingDefs_Misc/WULA_Flyover_Item.xml
index bef6ff3c..477e48c2 100644
--- a/1.6/1.6/Defs/ThingDefs_Misc/WULA_Flyover_Item.xml
+++ b/1.6/1.6/Defs/ThingDefs_Misc/WULA_Flyover_Item.xml
@@ -1187,97 +1187,6 @@
CraterLarge
-
- WULA_DarkMatterBomb_Shockwave
-
-
- SubEffecter_SprayerTriggered
- Fleck_BlastMechBandShockwave
- 1
- OnSource
- true
- 0~0
-
-
- SubEffecter_SprayerTriggered
- Fleck_BlastMechBandRedLine
- 1
- OnSource
- true
- 0~0
-
-
- SubEffecter_SprayerTriggered
- FlashMechBand
- 1
- OnSource
- true
- 0~0
-
-
- SubEffecter_SprayerTriggered
- Mote_RedFlashStrong
- 1
- OnSource
- 24
-
-
-
-
-
WULA_DarkMatterBomb_FlashStrong
MoteAttached
diff --git a/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Laser_Weapon.xml b/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Laser_Weapon.xml
deleted file mode 100644
index eda8471a..00000000
--- a/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Laser_Weapon.xml
+++ /dev/null
@@ -1,216 +0,0 @@
-
-
-
-
-
-
-
-
- WULA_RW_DM_AR
- DMa-8"陨硫"
- 乌拉帝国一线部队所使用的由暗物质驱动的常规步枪,暗物质经由螺旋结构形成自旋极化光束,可以在远距离上洞穿敌人,并引发小规模湮灭反应。
- Ultra
-
-
- Wula/Weapon/WULA_RW_DM_AR
- Graphic_Single
- 1.2
-
-
- Wula_Ranged_Weapon_T4
-
- 0.9
- Interact_ChargeRifle
-
-
- WULA_Cube_Productor_Energy
-
- WULA_Synth_Weapon_4_DM_Base_Technology
- UnfinishedWeapon
-
-
- 400
- 200
- 4
-
-
- 40000
- 4.5
- 1
- 1
- 1
- 1
- 1.25
-
-
-
- WulaFallenEmpire.Verb_ShootBeamExplosive
-
-
- true
- 1
- 36
- 6
- 6
- Wula_Dark_Matter_Beam
-
-
- 1000
- -1
- 0
- 0
- 0
-
-
- 0
- BeamGraser_Shooting
- Fleck_BeamBurn
- 0.32
- Mote_Wula_Dark_Matter_Beam
- GraserBeam_End
-
- 0.35
-
-
- 0.6
- 0.6
- 0.25
-
-
- true
-
-
- (0, 0)
- (0.65, 0.4)
- (1, 0.75)
-
-
-
-
-
- true
-
-
-
- true
- 1
- 1.8
- Wula_Dark_Matter_Flame
- 15
- Explosion_Bomb
- 0.6
-
-
- None
-
- RewardStandardQualitySuper
-
-
-
-
- WULA_RW_DM_Cannon
- DMc-65"铋晶"
- 乌拉帝国一线部队携带的高射速反物质射线炮,会扫射敌人并造成范围爆炸,射流掠过时一切如被漩涡吞噬般分崩离析,唯留尘埃飘散。
- Ultra
-
-
- Wula/Weapon/WULA_RW_DM_Cannon
- Graphic_Single
- 1.5
-
-
- Wula_Ranged_Weapon_T4
-
- 0.8
- Interact_ChargeRifle
-
-
- WULA_Cube_Productor_Energy
-
- WULA_Synth_Weapon_4_DM_Base_Technology
- UnfinishedWeapon
-
-
- 500
- 300
- 6
-
-
- 50000
- 10
- 0.6
- 0.6
- 0.6
- 0.6
- 2.5
-
-
-
- WulaFallenEmpire.Verb_ShootBeamExplosive
-
-
- true
- 1
- 22
- 12
- 6
- Wula_Dark_Matter_Beam
-
-
-
- 11
- 6
- 0.5
- 0.6
- 0.5
-
-
- 0
- BeamGraser_Shooting
- Fleck_BeamBurn
- 0.32
- Mote_Wula_Dark_Matter_Beam
- GraserBeam_End
-
- 0.45
-
-
- 0.6
- 0.6
- 0.25
-
-
- true
-
-
- (0, 0)
- (0.65, 0.4)
- (1, 0.75)
-
-
-
-
-
- true
-
-
-
- true
- 2
- 3
- Wula_Dark_Matter_Flame
- 25
- Explosion_Bomb
- 0.6
-
-
- None
-
- RewardStandardQualitySuper
-
-
-
\ No newline at end of file
diff --git a/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_Weapon.xml b/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_Weapon.xml
index d94af5c0..ca00cf7b 100644
--- a/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_Weapon.xml
+++ b/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_Weapon.xml
@@ -1,6 +1,5 @@
-
WULA_WM_Panzer_Autocannon
@@ -389,6 +388,4 @@
-
-
\ No newline at end of file
diff --git a/Source/WulaFallenEmpire/EventSystem/QuestNode/QuestNode_Root_EventLetter.cs b/Source/WulaFallenEmpire/EventSystem/QuestNode/QuestNode_Root_EventLetter.cs
new file mode 100644
index 00000000..bfc4e177
--- /dev/null
+++ b/Source/WulaFallenEmpire/EventSystem/QuestNode/QuestNode_Root_EventLetter.cs
@@ -0,0 +1,71 @@
+using RimWorld;
+using RimWorld.QuestGen;
+using System;
+using System.Collections.Generic;
+using Verse;
+
+namespace WulaFallenEmpire
+{
+ public class QuestNode_Root_EventLetter : QuestNode
+ {
+ // 直接指定 EventDef 名称
+ public SlateRef eventDefName;
+
+ // 移除原有的向后兼容字段,因为我们只需要 EventDef 接口
+ // public SlateRef letterLabel;
+ // public SlateRef letterTitle;
+ // public SlateRef letterText;
+ // public List options = new List ();
+
+ protected override void RunInt()
+ {
+ Slate slate = QuestGen.slate;
+ string defName = eventDefName.GetValue(slate);
+
+ if (!defName.NullOrEmpty())
+ {
+ OpenEventDefWindow(defName);
+ }
+ else
+ {
+ Log.Error("[WulaFallenEmpire] QuestNode_Root_EventLetter: eventDefName is not specified.");
+ }
+ }
+
+ protected override bool TestRunInt(Slate slate)
+ {
+ string defName = eventDefName.GetValue(slate);
+
+ if (defName.NullOrEmpty())
+ {
+ Log.Error("[WulaFallenEmpire] QuestNode_Root_EventLetter: eventDefName is not specified.");
+ return false;
+ }
+
+ EventDef eventDef = DefDatabase.GetNamed(defName, false);
+ if (eventDef == null)
+ {
+ Log.Error($"[WulaFallenEmpire] QuestNode_Root_EventLetter: EventDef '{defName}' not found.");
+ return false;
+ }
+
+ return true;
+ }
+
+ ///
+ /// 直接打开指定的 EventDef 窗口
+ ///
+ private void OpenEventDefWindow(string defName)
+ {
+ EventDef eventDef = DefDatabase.GetNamed(defName);
+ if (eventDef != null)
+ {
+ Find.WindowStack.Add((Window)Activator.CreateInstance(eventDef.windowType, eventDef));
+ }
+ else
+ {
+ Log.Error($"[WulaFallenEmpire] QuestNode_Root_EventLetter: Could not find EventDef '{defName}'");
+ }
+ }
+ }
+}
diff --git a/Source/WulaFallenEmpire/WulaFallenEmpire.csproj b/Source/WulaFallenEmpire/WulaFallenEmpire.csproj
index 5a5441f6..21bdd02a 100644
--- a/Source/WulaFallenEmpire/WulaFallenEmpire.csproj
+++ b/Source/WulaFallenEmpire/WulaFallenEmpire.csproj
@@ -108,8 +108,7 @@
-
-
+