2
This commit is contained in:
Binary file not shown.
@@ -220,7 +220,7 @@
|
|||||||
<AbilityDef>
|
<AbilityDef>
|
||||||
<defName>WULA_Spawn_BattleShip_Artillery</defName>
|
<defName>WULA_Spawn_BattleShip_Artillery</defName>
|
||||||
<label>呼叫全域封锁舰队</label>
|
<label>呼叫全域封锁舰队</label>
|
||||||
<description>申请沿指定航道发起全域封锁,一整只乌拉帝国舰队将在大量战机编队的掩护下沿着航道行进,并使用所有的可用武器进行轰炸,以彻底粉碎一切抵抗。</description>
|
<description>申请沿指定航道发起全域封锁,一整只乌拉帝国舰队将在大量战机编队的掩护下沿着航道行进,并使用舰炮进行轰炸,以彻底粉碎一切抵抗。\n\n轰炸的范围几乎覆盖整张地图,炮击会尽可能避免击中殖民地的人员和资产,但是巨大的轰炸范围使得底下的一切都难逃厄运——尽可能不要在自己的殖民地上空呼叫。</description>
|
||||||
<iconPath>Wula/UI/Abilities/WULA_Spawn_Fighter_Drone_Laser</iconPath>
|
<iconPath>Wula/UI/Abilities/WULA_Spawn_Fighter_Drone_Laser</iconPath>
|
||||||
<cooldownTicksRange>1</cooldownTicksRange>
|
<cooldownTicksRange>1</cooldownTicksRange>
|
||||||
<hotKey>Misc12</hotKey>
|
<hotKey>Misc12</hotKey>
|
||||||
@@ -238,18 +238,18 @@
|
|||||||
</targetParams>
|
</targetParams>
|
||||||
</verbProperties>
|
</verbProperties>
|
||||||
<comps>
|
<comps>
|
||||||
<!-- <li Class="WulaFallenEmpire.CompProperties_AbilityResearchPrereq">
|
<li Class="WulaFallenEmpire.CompProperties_AbilityResearchPrereq">
|
||||||
<requiredResearch>WULA_Light_Fighter_Drone_Technology</requiredResearch>
|
<requiredResearch>WULA_Light_Fighter_Drone_Technology</requiredResearch>
|
||||||
</li> -->
|
</li>
|
||||||
<!-- <li Class="WulaFallenEmpire.CompProperties_AircraftStrike">
|
<li Class="WulaFallenEmpire.CompProperties_AircraftStrike">
|
||||||
<requiredAircraftType>WULA_Fighter_Drone_Entity</requiredAircraftType>
|
<requiredAircraftType>WULA_MotherShip_Entity</requiredAircraftType>
|
||||||
<aircraftCooldownTicks>5000</aircraftCooldownTicks>
|
<aircraftCooldownTicks>15000</aircraftCooldownTicks>
|
||||||
<aircraftsPerUse>1</aircraftsPerUse>
|
<aircraftsPerUse>1</aircraftsPerUse>
|
||||||
</li> -->
|
</li>
|
||||||
<li Class="WulaFallenEmpire.CompProperties_AbilitySpawnFlyOver">
|
<li Class="WulaFallenEmpire.CompProperties_AbilitySpawnFlyOver">
|
||||||
<flyOverDef>WULA_MotherShip_Planet_Interdiction</flyOverDef>
|
<flyOverDef>WULA_MotherShip_Planet_Interdiction</flyOverDef>
|
||||||
<flyOverType>GroundStrafing</flyOverType>
|
<flyOverType>GroundStrafing</flyOverType>
|
||||||
<flightSpeed>0.005</flightSpeed>
|
<flightSpeed>0.02</flightSpeed>
|
||||||
<altitude>20</altitude>
|
<altitude>20</altitude>
|
||||||
<playFlyOverSound>true</playFlyOverSound>
|
<playFlyOverSound>true</playFlyOverSound>
|
||||||
<approachType>Perpendicular</approachType>
|
<approachType>Perpendicular</approachType>
|
||||||
|
|||||||
@@ -45,6 +45,24 @@
|
|||||||
</li>
|
</li>
|
||||||
</optionEffects>
|
</optionEffects>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>我们要申请支援!</label>
|
||||||
|
<useCustomColors>true</useCustomColors>
|
||||||
|
<normalColor>(255,255,255,255)</normalColor>
|
||||||
|
<hoverColor>(157,201,185,195)</hoverColor>
|
||||||
|
<textColor>(255,255,255,255)</textColor>
|
||||||
|
<textHoverColor>(255,255,255,255)</textHoverColor>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_OpenCustomUI">
|
||||||
|
<defName>Wula_UI_Legion_30</defName>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<label>再见</label>
|
<label>再见</label>
|
||||||
<useCustomColors>true</useCustomColors>
|
<useCustomColors>true</useCustomColors>
|
||||||
@@ -62,6 +80,344 @@
|
|||||||
</li>
|
</li>
|
||||||
</options>
|
</options>
|
||||||
</WulaFallenEmpire.EventDef>
|
</WulaFallenEmpire.EventDef>
|
||||||
|
<WulaFallenEmpire.EventDef>
|
||||||
|
<defName>Wula_UI_Legion_30</defName>
|
||||||
|
<label>和P.I.A的通讯</label>
|
||||||
|
<portraitPath>Wula/Events/Portraits/WULA_Legion_5</portraitPath>
|
||||||
|
<characterName>「军团」,P.I.A</characterName>
|
||||||
|
<descriptions>
|
||||||
|
<li>好的好的,那么,你们需要什么?</li>
|
||||||
|
<li>嗯嗯,你们遇到什么麻烦了?</li>
|
||||||
|
<li>希望你们没给我捅什么大篓子。</li>
|
||||||
|
</descriptions>
|
||||||
|
<immediateEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_SetVariable">
|
||||||
|
<name>Wula_Has_Receive_Silver_From_PIA</name>
|
||||||
|
<value>0</value>
|
||||||
|
<type>Int</type>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_SetVariable">
|
||||||
|
<name>Wula_Has_Receive_MechWula_From_PIA</name>
|
||||||
|
<value>0</value>
|
||||||
|
<type>Int</type>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_SetVariable">
|
||||||
|
<name>Wula_Has_Receive_Reinforcement_From_PIA</name>
|
||||||
|
<value>0</value>
|
||||||
|
<type>Int</type>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<!-- 获取好感 -->
|
||||||
|
<li Class="WulaFallenEmpire.Effect_ClearVariable">
|
||||||
|
<name>Wula_Goodwill_To_PIA</name>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CheckFactionGoodwill">
|
||||||
|
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||||
|
<variableName>Wula_Goodwill_To_PIA</variableName>
|
||||||
|
</li>
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</immediateEffects>
|
||||||
|
<options>
|
||||||
|
<li>
|
||||||
|
<label>我们需要资金支持</label>
|
||||||
|
<disabledReason>应急资金,我好像已经发给你们了?</disabledReason>
|
||||||
|
<hideWhenDisabled>false</hideWhenDisabled>
|
||||||
|
<conditions>
|
||||||
|
<li Class="WulaFallenEmpire.Condition_VariableEquals">
|
||||||
|
<name>Wula_Has_Receive_Silver_From_PIA</name>
|
||||||
|
<value>0</value>
|
||||||
|
</li>
|
||||||
|
</conditions>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_OpenCustomUI">
|
||||||
|
<defName>Wula_UI_Legion_31</defName>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>我们需要一只新的机械乌拉</label>
|
||||||
|
<disabledReason>你们不会自己去造吗?</disabledReason>
|
||||||
|
<hideWhenDisabled>false</hideWhenDisabled>
|
||||||
|
<conditions>
|
||||||
|
<li Class="WulaFallenEmpire.Condition_VariableEquals">
|
||||||
|
<name>Wula_Has_Receive_MechWula_From_PIA</name>
|
||||||
|
<value>0</value>
|
||||||
|
</li>
|
||||||
|
</conditions>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_OpenCustomUI">
|
||||||
|
<defName>Wula_UI_Anisia_32</defName>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>我们需要直接的武力支援</label>
|
||||||
|
<disabledReason>我们的特遣队都在忙,请稍后再试——好吧我骗你们的,你们就不能自己搞两杆枪吗?</disabledReason>
|
||||||
|
<hideWhenDisabled>false</hideWhenDisabled>
|
||||||
|
<conditions>
|
||||||
|
<li Class="WulaFallenEmpire.Condition_VariableEquals">
|
||||||
|
<name>Wula_Has_Receive_Reinforcement_From_PIA</name>
|
||||||
|
<value>0</value>
|
||||||
|
</li>
|
||||||
|
</conditions>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_OpenCustomUI">
|
||||||
|
<defName>Wula_UI_Anisia_33</defName>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>还有其他事情···</label>
|
||||||
|
<useCustomColors>true</useCustomColors>
|
||||||
|
<normalColor>(255,255,255,255)</normalColor>
|
||||||
|
<hoverColor>(157,201,185,195)</hoverColor>
|
||||||
|
<textColor>(255,255,255,255)</textColor>
|
||||||
|
<textHoverColor>(255,255,255,255)</textHoverColor>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_OpenCustomUI">
|
||||||
|
<defName>Wula_UI_Legion_1</defName>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
|
</options>
|
||||||
|
</WulaFallenEmpire.EventDef>
|
||||||
|
<WulaFallenEmpire.EventDef>
|
||||||
|
<defName>Wula_UI_Legion_31</defName>
|
||||||
|
<label>和P.I.A的通讯</label>
|
||||||
|
<portraitPath>Wula/Events/Portraits/WULA_Legion_5</portraitPath>
|
||||||
|
<characterName>「军团」,P.I.A</characterName>
|
||||||
|
<descriptions>
|
||||||
|
<li>原来是来要钱的嘛···我可以给你们调拨一轮紧急资金,但是这是有限的,并且仅能作殖民地发展之用。\n\n话说回来,你们真的缺钱吗,我怎么有点不信?</li>
|
||||||
|
</descriptions>
|
||||||
|
<immediateEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<!-- 获取好感 -->
|
||||||
|
<li Class="WulaFallenEmpire.Effect_ClearVariable">
|
||||||
|
<name>Wula_Goodwill_To_PIA</name>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CheckFactionGoodwill">
|
||||||
|
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||||
|
<variableName>Wula_Goodwill_To_PIA</variableName>
|
||||||
|
</li>
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</immediateEffects>
|
||||||
|
<options>
|
||||||
|
<li>
|
||||||
|
<label>对的对的,我们是真穷!</label>
|
||||||
|
<disabledReason>殖民地的表现让P.I.A相当不满意,不会为殖民地派出任何额外增援</disabledReason>
|
||||||
|
<hideWhenDisabled>false</hideWhenDisabled>
|
||||||
|
<conditions>
|
||||||
|
<li Class="WulaFallenEmpire.Condition_VariableGreaterThan">
|
||||||
|
<name>Wula_Goodwill_To_PIA</name>
|
||||||
|
<value>-75</value>
|
||||||
|
</li>
|
||||||
|
</conditions>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_GiveThing">
|
||||||
|
<thingDef>Silver</thingDef>
|
||||||
|
<count>3000</count>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_ModifyVariable">
|
||||||
|
<name>Wula_Has_Receive_Silver_From_PIA</name>
|
||||||
|
<value>1</value>
|
||||||
|
<operation>Add</operation>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_ShowMessage">
|
||||||
|
<message>P.I.A的紧急资金已经空投(3000银)</message>
|
||||||
|
<messageTypeDef>PositiveEvent</messageTypeDef>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>还是算了</label>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_OpenCustomUI">
|
||||||
|
<defName>Wula_UI_Legion_1</defName>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
|
</options>
|
||||||
|
</WulaFallenEmpire.EventDef>
|
||||||
|
<WulaFallenEmpire.EventDef>
|
||||||
|
<defName>Wula_UI_Anisia_32</defName>
|
||||||
|
<label>和P.I.A的通讯</label>
|
||||||
|
<portraitPath>Wula/Events/Portraits/WULA_Legion_2</portraitPath>
|
||||||
|
<characterName>「军团」,P.I.A</characterName>
|
||||||
|
<descriptions>
|
||||||
|
<li>唔,现在我手上确实有一台乌拉帝国合成人还没有分配殖民地,你们需要的话可以划拨给你们。但是下次你们得记得自己造——造合成人的材料是要花项目资金的。</li>
|
||||||
|
</descriptions>
|
||||||
|
<immediateEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<!-- 获取好感 -->
|
||||||
|
<li Class="WulaFallenEmpire.Effect_ClearVariable">
|
||||||
|
<name>Wula_Goodwill_To_PIA</name>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CheckFactionGoodwill">
|
||||||
|
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||||
|
<variableName>Wula_Goodwill_To_PIA</variableName>
|
||||||
|
</li>
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</immediateEffects>
|
||||||
|
<options>
|
||||||
|
<li>
|
||||||
|
<label>我们欣然接受</label>
|
||||||
|
<disabledReason>殖民地的表现让P.I.A相当不满意,不会为殖民地派出任何额外增援</disabledReason>
|
||||||
|
<hideWhenDisabled>false</hideWhenDisabled>
|
||||||
|
<conditions>
|
||||||
|
<li Class="WulaFallenEmpire.Condition_VariableGreaterThan">
|
||||||
|
<name>Wula_Goodwill_To_PIA</name>
|
||||||
|
<value>-75</value>
|
||||||
|
</li>
|
||||||
|
</conditions>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_SpawnPawn">
|
||||||
|
<kindDef>Wula_PawnKind</kindDef>
|
||||||
|
<count>1</count>
|
||||||
|
<joinPlayerFaction>true</joinPlayerFaction>
|
||||||
|
<letterLabel>机械乌拉加入殖民地</letterLabel>
|
||||||
|
<letterText>一台乌拉帝国合成人受命加入了殖民地。</letterText>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_ModifyVariable">
|
||||||
|
<name>Wula_Has_Receive_MechWula_From_PIA</name>
|
||||||
|
<value>1</value>
|
||||||
|
<operation>Add</operation>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>还是算了</label>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_OpenCustomUI">
|
||||||
|
<defName>Wula_UI_Legion_1</defName>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
|
</options>
|
||||||
|
</WulaFallenEmpire.EventDef>
|
||||||
|
<WulaFallenEmpire.EventDef>
|
||||||
|
<defName>Wula_UI_Anisia_33</defName>
|
||||||
|
<label>和P.I.A的通讯</label>
|
||||||
|
<portraitPath>Wula/Events/Portraits/WULA_Legion_1</portraitPath>
|
||||||
|
<characterName>「军团」,P.I.A</characterName>
|
||||||
|
<descriptions>
|
||||||
|
<li>遇到麻烦了?我可以把手上的特遣队丢下去,你们记得找好掩体。</li>
|
||||||
|
</descriptions>
|
||||||
|
<immediateEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<!-- 获取好感 -->
|
||||||
|
<li Class="WulaFallenEmpire.Effect_ClearVariable">
|
||||||
|
<name>Wula_Goodwill_To_PIA</name>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CheckFactionGoodwill">
|
||||||
|
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||||
|
<variableName>Wula_Goodwill_To_PIA</variableName>
|
||||||
|
</li>
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</immediateEffects>
|
||||||
|
<options>
|
||||||
|
<li>
|
||||||
|
<label>再不来我们要死完啦</label>
|
||||||
|
<disabledReason>殖民地的表现让P.I.A相当不满意,不会为殖民地派出任何额外增援</disabledReason>
|
||||||
|
<hideWhenDisabled>false</hideWhenDisabled>
|
||||||
|
<conditions>
|
||||||
|
<li Class="WulaFallenEmpire.Condition_VariableGreaterThan">
|
||||||
|
<name>Wula_Goodwill_To_PIA</name>
|
||||||
|
<value>-75</value>
|
||||||
|
</li>
|
||||||
|
</conditions>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_ModifyVariable">
|
||||||
|
<name>Wula_Has_Receive_Reinforcement_From_PIA</name>
|
||||||
|
<value>1</value>
|
||||||
|
<operation>Add</operation>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_TriggerRaid">
|
||||||
|
<points>6000</points>
|
||||||
|
<faction>Wula_PIA_Legion_Faction</faction>
|
||||||
|
<raidStrategy>ImmediateAttackFriendly</raidStrategy>
|
||||||
|
<raidArrivalMode>EdgeDropGroups</raidArrivalMode>
|
||||||
|
<groupKind>Combat</groupKind>
|
||||||
|
<pawnGroupMakers>
|
||||||
|
<li>
|
||||||
|
<kindDef>Combat</kindDef>
|
||||||
|
<commonality>100</commonality>
|
||||||
|
<options>
|
||||||
|
<Wula_PIA_Heavy_Unit>1</Wula_PIA_Heavy_Unit>
|
||||||
|
</options>
|
||||||
|
</li>
|
||||||
|
</pawnGroupMakers>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>还是算了</label>
|
||||||
|
<optionEffects>
|
||||||
|
<li>
|
||||||
|
<effects>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_OpenCustomUI">
|
||||||
|
<defName>Wula_UI_Legion_1</defName>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.Effect_CloseDialog" />
|
||||||
|
</effects>
|
||||||
|
</li>
|
||||||
|
</optionEffects>
|
||||||
|
</li>
|
||||||
|
</options>
|
||||||
|
</WulaFallenEmpire.EventDef>
|
||||||
|
|
||||||
<!-- 乱丢垃圾 -->
|
<!-- 乱丢垃圾 -->
|
||||||
<WulaFallenEmpire.EventDef>
|
<WulaFallenEmpire.EventDef>
|
||||||
|
|||||||
@@ -78,7 +78,7 @@
|
|||||||
<canUseAvoidGrid>false</canUseAvoidGrid>
|
<canUseAvoidGrid>false</canUseAvoidGrid>
|
||||||
<techLevel>Ultra</techLevel>
|
<techLevel>Ultra</techLevel>
|
||||||
<earliestRaidDays>999999</earliestRaidDays> <!-- 通过事件发动袭击,不走常规袭击 -->
|
<earliestRaidDays>999999</earliestRaidDays> <!-- 通过事件发动袭击,不走常规袭击 -->
|
||||||
<permanentEnemy>true</permanentEnemy>
|
<permanentEnemy>false</permanentEnemy>
|
||||||
<hostileToFactionlessHumanlikes>true</hostileToFactionlessHumanlikes>
|
<hostileToFactionlessHumanlikes>true</hostileToFactionlessHumanlikes>
|
||||||
<maxPawnCostPerTotalPointsCurve>
|
<maxPawnCostPerTotalPointsCurve>
|
||||||
<points>
|
<points>
|
||||||
@@ -94,7 +94,7 @@
|
|||||||
<kindDef>Combat</kindDef>
|
<kindDef>Combat</kindDef>
|
||||||
<commonality>30</commonality>
|
<commonality>30</commonality>
|
||||||
<options>
|
<options>
|
||||||
<Wula_PawnKind>10</Wula_PawnKind>
|
<Mech_WULA_Cat_Assault>10</Mech_WULA_Cat_Assault>
|
||||||
</options>
|
</options>
|
||||||
</li>
|
</li>
|
||||||
</pawnGroupMakers>
|
</pawnGroupMakers>
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" ?>
|
|
||||||
<Defs>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
这是作为炮塔的武器定义 (ThingDef)
|
|
||||||
它本身是一个不可装备、不可见的物品,仅作为 HediffComp 的数据源。
|
|
||||||
HediffComp_TopTurret 会从这里读取武器的属性 (verb)、射程、冷却时间等,
|
|
||||||
以及炮塔的图形 (graphicData)。
|
|
||||||
-->
|
|
||||||
|
|
||||||
</Defs>
|
|
||||||
@@ -1318,66 +1318,6 @@
|
|||||||
</recipeUsers>
|
</recipeUsers>
|
||||||
</RecipeDef>
|
</RecipeDef>
|
||||||
|
|
||||||
<!-- 抽魂 -->
|
|
||||||
<HediffDef ParentName="ImplantHediffBase">
|
|
||||||
<defName>WULA_Extract_Soul_Wedge_Hediff</defName>
|
|
||||||
<hediffClass>HediffWithComps</hediffClass>
|
|
||||||
<label>灵魂抽离</label>
|
|
||||||
<description>该生物的灵魂被人为的分离了。</description>
|
|
||||||
<descriptionShort>该生物的灵魂被人为的分离了,在这种状态下,目标不稳定的灵魂每过一段时间都可能导致目标无法行动、陷入昏迷甚至是直接死亡——这种症状没有固定的治愈时间,但是每天都将有一定几率自动消失,届时可再次开展提取手术。</descriptionShort>
|
|
||||||
<!-- <initialSeverity>0.5</initialSeverity> -->
|
|
||||||
<minSeverity>0.01</minSeverity>
|
|
||||||
<maxSeverity>1</maxSeverity>
|
|
||||||
<alwaysShowSeverity>true</alwaysShowSeverity>
|
|
||||||
<isBad>true</isBad>
|
|
||||||
<duplicationAllowed>true</duplicationAllowed>
|
|
||||||
<keepOnBodyPartRestoration>true</keepOnBodyPartRestoration> <!-- true -->
|
|
||||||
<defaultInstallPart>Brain</defaultInstallPart>
|
|
||||||
<comps>
|
|
||||||
<li Class="HediffCompProperties_ChanceToRemove">
|
|
||||||
<intervalTicks>60000</intervalTicks>
|
|
||||||
<chance>0.5</chance>
|
|
||||||
</li>
|
|
||||||
<li Class="HediffCompProperties_RandomizeStageWithInterval">
|
|
||||||
<ticksToRandomize>60000</ticksToRandomize>
|
|
||||||
<notifyMessage>{PAWN_labelShort} 的灵魂状态从 {1} 转变为 {2}.</notifyMessage>
|
|
||||||
</li>
|
|
||||||
<li Class="HediffCompProperties_DisappearsOnDeath"/>
|
|
||||||
</comps>
|
|
||||||
<stages>
|
|
||||||
<li>
|
|
||||||
<label>残缺</label>
|
|
||||||
<minSeverity>0.01</minSeverity>
|
|
||||||
<capMods>
|
|
||||||
<li>
|
|
||||||
<capacity>Consciousness</capacity>
|
|
||||||
<setMax>0.5</setMax>
|
|
||||||
</li>
|
|
||||||
</capMods>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<label>破碎</label>
|
|
||||||
<minSeverity>0.3</minSeverity>
|
|
||||||
<capMods>
|
|
||||||
<li>
|
|
||||||
<capacity>Consciousness</capacity>
|
|
||||||
<setMax>0.1</setMax>
|
|
||||||
</li>
|
|
||||||
</capMods>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<label>弥散</label>
|
|
||||||
<minSeverity>0.9</minSeverity>
|
|
||||||
<capMods>
|
|
||||||
<li>
|
|
||||||
<capacity>Consciousness</capacity>
|
|
||||||
<setMax>0</setMax>
|
|
||||||
</li>
|
|
||||||
</capMods>
|
|
||||||
</li>
|
|
||||||
</stages>
|
|
||||||
</HediffDef>
|
|
||||||
|
|
||||||
<!-- 关机 -->
|
<!-- 关机 -->
|
||||||
<RecipeDef ParentName="SurgeryInstallBodyPartArtificialBase">
|
<RecipeDef ParentName="SurgeryInstallBodyPartArtificialBase">
|
||||||
<defName>WULA_Shutdown_Synth</defName>
|
<defName>WULA_Shutdown_Synth</defName>
|
||||||
@@ -1466,4 +1406,66 @@
|
|||||||
</li>
|
</li>
|
||||||
</stages>
|
</stages>
|
||||||
</HediffDef>
|
</HediffDef>
|
||||||
|
|
||||||
|
<!-- 特殊-传送器 -->
|
||||||
|
<HediffDef>
|
||||||
|
<defName>WULA_AutoJumpdrive_Hediff</defName>
|
||||||
|
<label>微型传送装置</label>
|
||||||
|
<description>安装在乌拉帝国合成人军团体内的微型跃迁引擎,会在合成人到达指定作战时间或死亡时将其回收</description>
|
||||||
|
<hediffClass>HediffWithComps</hediffClass>
|
||||||
|
<defaultLabelColor>(1,0,0.5)</defaultLabelColor>
|
||||||
|
<maxSeverity>1.0</maxSeverity>
|
||||||
|
<initialSeverity>0.0</initialSeverity>
|
||||||
|
<isBad>true</isBad>
|
||||||
|
<spawnThingOnRemoved>WULA_AutoJumpdrive</spawnThingOnRemoved>
|
||||||
|
<comps>
|
||||||
|
<li Class="HediffCompProperties_DissolveGearOnDeath">
|
||||||
|
<fleck>AcidCloud</fleck>
|
||||||
|
<moteCount>6</moteCount>
|
||||||
|
<moteOffsetRange>0.25~0.75</moteOffsetRange>
|
||||||
|
<filth>Filth_Slime</filth>
|
||||||
|
<sound>DeathAcidifier</sound>
|
||||||
|
<injuryCreatedOnDeath>ChemicalBurn</injuryCreatedOnDeath>
|
||||||
|
<injuryCount>3~6</injuryCount>
|
||||||
|
</li>
|
||||||
|
<li Class="HediffCompProperties_Disappears">
|
||||||
|
<disappearsAfterTicks>10000</disappearsAfterTicks> <!-- 2/3 RimWorld days -->
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.HediffCompProperties_DisappearWithEffect">
|
||||||
|
<disappearsAfterTicks>15000</disappearsAfterTicks>
|
||||||
|
<showRemainingTime>true</showRemainingTime>
|
||||||
|
<fleckDef>PsycastAreaEffect</fleckDef>
|
||||||
|
<fleckScale>2.5</fleckScale>
|
||||||
|
<dropEquipment>false</dropEquipment>
|
||||||
|
<destroyCorpse>true</destroyCorpse>
|
||||||
|
<playSound>true</playSound>
|
||||||
|
<messageOnDisappear>{0} 通过传送离开了殖民地</messageOnDisappear>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>微弱</label>
|
||||||
|
<minSeverity>0</minSeverity>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</HediffDef>
|
||||||
|
<ThingDef ParentName="BodyPartBase">
|
||||||
|
<defName>WULA_AutoJumpdrive</defName>
|
||||||
|
<label>微型传送装置</label>
|
||||||
|
<description>安装在乌拉帝国合成人军团体内的微型跃迁引擎,会在合成人到达指定作战时间或死亡时将其回收。</description>
|
||||||
|
<statBases>
|
||||||
|
<Mass>0.3</Mass>
|
||||||
|
<WorkToMake>1</WorkToMake>
|
||||||
|
</statBases>
|
||||||
|
<techHediffsTags>
|
||||||
|
<li>WULA_AutoJumpdrive</li>
|
||||||
|
</techHediffsTags>
|
||||||
|
<costList>
|
||||||
|
<ComponentIndustrial>1</ComponentIndustrial>
|
||||||
|
</costList>
|
||||||
|
<recipeMaker>
|
||||||
|
<soundWorking>Recipe_Smith</soundWorking>
|
||||||
|
<recipeUsers Inherit="False" IsNull="True"/>
|
||||||
|
</recipeMaker>
|
||||||
|
</ThingDef>
|
||||||
</Defs>
|
</Defs>
|
||||||
|
|||||||
@@ -277,4 +277,57 @@
|
|||||||
<damageAmountBase>1</damageAmountBase>
|
<damageAmountBase>1</damageAmountBase>
|
||||||
</projectile>
|
</projectile>
|
||||||
</ThingDef>
|
</ThingDef>
|
||||||
|
|
||||||
|
<!-- 战斗类乌拉 -->
|
||||||
|
<PawnKindDef>
|
||||||
|
<defName>Wula_PIA_Heavy_Unit</defName>
|
||||||
|
<label>军团重装步兵</label>
|
||||||
|
<race>WulaSpecies</race>
|
||||||
|
<lifeStages>
|
||||||
|
<li>
|
||||||
|
<bodyGraphicData>
|
||||||
|
<texPath>Wula/Item/WULA_Species_Icon</texPath>
|
||||||
|
<maskPath>SRA/Pawn/Mechanoid/AllegianceOverlays/None</maskPath>
|
||||||
|
<shaderType>CutoutWithOverlay</shaderType>
|
||||||
|
<graphicClass>Graphic_Multi</graphicClass>
|
||||||
|
<drawSize>1.1</drawSize>
|
||||||
|
<shadowData>
|
||||||
|
<volume>(0.2, 0.3, 0.2)</volume>
|
||||||
|
</shadowData>
|
||||||
|
</bodyGraphicData>
|
||||||
|
</li>
|
||||||
|
</lifeStages>
|
||||||
|
<minGenerationAge>18</minGenerationAge>
|
||||||
|
<maxGenerationAge>20</maxGenerationAge>
|
||||||
|
<combatPower>500</combatPower>
|
||||||
|
<initialWillRange>10~20</initialWillRange>
|
||||||
|
<initialResistanceRange>10~20</initialResistanceRange>
|
||||||
|
<itemQuality>Poor</itemQuality>
|
||||||
|
<isFighter>true</isFighter>
|
||||||
|
<apparelTags>
|
||||||
|
<li>Wula_Armor_Super_Heavy</li>
|
||||||
|
</apparelTags>
|
||||||
|
<weaponTags>
|
||||||
|
<li>Wula_Melee_Weapon_T1</li>
|
||||||
|
<li>Wula_Melee_Weapon_T3</li>
|
||||||
|
<li>Wula_Ranged_Weapon_T2</li>
|
||||||
|
</weaponTags>
|
||||||
|
<abilities>
|
||||||
|
</abilities>
|
||||||
|
<weaponMoney>3000~8000</weaponMoney>
|
||||||
|
<apparelAllowHeadgearChance>1</apparelAllowHeadgearChance>
|
||||||
|
<apparelMoney>999999~999999</apparelMoney>
|
||||||
|
<techHediffsMoney>1000~2000</techHediffsMoney>
|
||||||
|
<techHediffsTags>
|
||||||
|
<li>WULA_AutoJumpdrive</li>
|
||||||
|
</techHediffsTags>
|
||||||
|
|
||||||
|
<backstoryFiltersOverride>
|
||||||
|
<li>
|
||||||
|
<categories>
|
||||||
|
<li>Wula_Backstory_Categories</li>
|
||||||
|
</categories>
|
||||||
|
</li>
|
||||||
|
</backstoryFiltersOverride>
|
||||||
|
</PawnKindDef>
|
||||||
</Defs>
|
</Defs>
|
||||||
@@ -719,17 +719,6 @@
|
|||||||
<alwaysHaulable>false</alwaysHaulable>
|
<alwaysHaulable>false</alwaysHaulable>
|
||||||
<altitudeLayer>MetaOverlays</altitudeLayer>
|
<altitudeLayer>MetaOverlays</altitudeLayer>
|
||||||
<comps>
|
<comps>
|
||||||
<li Class="WulaFallenEmpire.CompProperties_ShipArtillery">
|
|
||||||
<ticksBetweenAttacks>300</ticksBetweenAttacks>
|
|
||||||
<attackDurationTicks>30</attackDurationTicks>
|
|
||||||
<attackRadius>65</attackRadius>
|
|
||||||
<skyfallerDef>WULA_Firepower_Primary_Cannon_Strafe_Skyfaller</skyfallerDef>
|
|
||||||
<shellsPerVolley>3</shellsPerVolley>
|
|
||||||
|
|
||||||
<!-- 新增派系甄别配置 -->
|
|
||||||
<useFactionDiscrimination>true</useFactionDiscrimination>
|
|
||||||
<useMicroTracking>true</useMicroTracking>
|
|
||||||
</li>
|
|
||||||
<!-- 入场信封信息 -->
|
<!-- 入场信封信息 -->
|
||||||
<li Class="WulaFallenEmpire.CompProperties_SendLetterAfterTicks">
|
<li Class="WulaFallenEmpire.CompProperties_SendLetterAfterTicks">
|
||||||
<ticksDelay>60</ticksDelay> <!-- 2秒后发送 -->
|
<ticksDelay>60</ticksDelay> <!-- 2秒后发送 -->
|
||||||
@@ -740,58 +729,13 @@
|
|||||||
<requireOnMap>true</requireOnMap>
|
<requireOnMap>true</requireOnMap>
|
||||||
<destroyAfterSending>false</destroyAfterSending> <!-- 发送后销毁flyover -->
|
<destroyAfterSending>false</destroyAfterSending> <!-- 发送后销毁flyover -->
|
||||||
</li>
|
</li>
|
||||||
<!-- 伴飞 -->
|
|
||||||
<li Class="WulaFallenEmpire.CompProperties_FlyOverEscort">
|
|
||||||
<escortFlyOverDef>WULA_BattleShip_Planet_Interdiction</escortFlyOverDef>
|
|
||||||
|
|
||||||
<!-- 生成配置 -->
|
|
||||||
<spawnIntervalTicks>0</spawnIntervalTicks> <!-- 5秒 -->
|
|
||||||
<maxEscorts>5</maxEscorts>
|
|
||||||
<spawnCount>1</spawnCount>
|
|
||||||
|
|
||||||
<!-- 位置配置 -->
|
|
||||||
<spawnDistance>0</spawnDistance>
|
|
||||||
<lateralOffset>40</lateralOffset>
|
|
||||||
<verticalOffset>5</verticalOffset>
|
|
||||||
<useRandomOffset>true</useRandomOffset>
|
|
||||||
<minSafeDistanceBetweenEscorts>10</minSafeDistanceBetweenEscorts> <!-- 伴飞物之间的距离 -->
|
|
||||||
<minSafeDistanceFromMain>70</minSafeDistanceFromMain> <!-- 与主飞行物的距离检查 -->
|
|
||||||
|
|
||||||
<!-- 飞行配置 -->
|
|
||||||
<escortSpeedMultiplier>1</escortSpeedMultiplier> <!-- 比主舰稍快 -->
|
|
||||||
<escortAltitudeOffset>10</escortAltitudeOffset> <!-- 比主舰稍高 -->
|
|
||||||
<mirrorMovement>false</mirrorMovement>
|
|
||||||
|
|
||||||
<!-- 行为配置 -->
|
|
||||||
<spawnOnStart>true</spawnOnStart>
|
|
||||||
<destroyWithParent>false</destroyWithParent>
|
|
||||||
<continuousSpawning>true</continuousSpawning>
|
|
||||||
|
|
||||||
<!-- 外观配置 -->
|
|
||||||
<useParentRotation>true</useParentRotation>
|
|
||||||
|
|
||||||
<!-- 缩放区间配置 -->
|
|
||||||
<escortScaleRange>
|
|
||||||
<min>0.4</min>
|
|
||||||
<max>0.6</max>
|
|
||||||
</escortScaleRange>
|
|
||||||
|
|
||||||
<!-- 高度遮罩配置 -->
|
|
||||||
<useHeightMask>true</useHeightMask>
|
|
||||||
<heightMaskAlphaRange>
|
|
||||||
<min>0.6</min>
|
|
||||||
<max>0.8</max>
|
|
||||||
</heightMaskAlphaRange>
|
|
||||||
<heightMaskColor>(0.7,0.85,1.0,1.0)</heightMaskColor>
|
|
||||||
<heightMaskScaleMultiplier>1.3</heightMaskScaleMultiplier>
|
|
||||||
</li>
|
|
||||||
<li Class="WulaFallenEmpire.CompProperties_FlyOverEscort">
|
<li Class="WulaFallenEmpire.CompProperties_FlyOverEscort">
|
||||||
<escortFlyOverDef>WULA_Striker_Escort</escortFlyOverDef>
|
<escortFlyOverDef>WULA_Striker_Escort</escortFlyOverDef>
|
||||||
|
|
||||||
<!-- 生成配置 -->
|
<!-- 生成配置 -->
|
||||||
<spawnIntervalTicks>1000</spawnIntervalTicks> <!-- 5秒 -->
|
<spawnIntervalTicks>1000</spawnIntervalTicks> <!-- 5秒 -->
|
||||||
<maxEscorts>20</maxEscorts>
|
<maxEscorts>30</maxEscorts>
|
||||||
<spawnCount>1</spawnCount>
|
<spawnCount>2</spawnCount>
|
||||||
|
|
||||||
<!-- 位置配置 -->
|
<!-- 位置配置 -->
|
||||||
<spawnDistance>0</spawnDistance>
|
<spawnDistance>0</spawnDistance>
|
||||||
@@ -802,7 +746,7 @@
|
|||||||
<minSafeDistanceFromMain>70</minSafeDistanceFromMain> <!-- 与主飞行物的距离检查 -->
|
<minSafeDistanceFromMain>70</minSafeDistanceFromMain> <!-- 与主飞行物的距离检查 -->
|
||||||
|
|
||||||
<!-- 飞行配置 -->
|
<!-- 飞行配置 -->
|
||||||
<escortSpeedMultiplier>25</escortSpeedMultiplier> <!-- 比主舰稍快 -->
|
<escortSpeedMultiplier>50</escortSpeedMultiplier> <!-- 比主舰稍快 -->
|
||||||
<escortAltitudeOffset>10</escortAltitudeOffset> <!-- 比主舰稍高 -->
|
<escortAltitudeOffset>10</escortAltitudeOffset> <!-- 比主舰稍高 -->
|
||||||
<mirrorMovement>false</mirrorMovement>
|
<mirrorMovement>false</mirrorMovement>
|
||||||
|
|
||||||
@@ -830,23 +774,23 @@
|
|||||||
<heightMaskScaleMultiplier>1.3</heightMaskScaleMultiplier>
|
<heightMaskScaleMultiplier>1.3</heightMaskScaleMultiplier>
|
||||||
</li>
|
</li>
|
||||||
<li Class="WulaFallenEmpire.CompProperties_FlyOverEscort">
|
<li Class="WulaFallenEmpire.CompProperties_FlyOverEscort">
|
||||||
<escortFlyOverDef>WULA_Bomber_Escort</escortFlyOverDef>
|
<escortFlyOverDef>WULA_BattleShip_Planet_Interdiction</escortFlyOverDef>
|
||||||
|
|
||||||
<!-- 生成配置 -->
|
<!-- 生成配置 -->
|
||||||
<spawnIntervalTicks>1350</spawnIntervalTicks> <!-- 5秒 -->
|
<spawnIntervalTicks>1350</spawnIntervalTicks> <!-- 5秒 -->
|
||||||
<maxEscorts>10</maxEscorts>
|
<maxEscorts>4</maxEscorts>
|
||||||
<spawnCount>1</spawnCount>
|
<spawnCount>1</spawnCount>
|
||||||
|
|
||||||
<!-- 位置配置 -->
|
<!-- 位置配置 -->
|
||||||
<spawnDistance>0</spawnDistance>
|
<spawnDistance>0</spawnDistance>
|
||||||
<lateralOffset>130</lateralOffset>
|
<lateralOffset>60</lateralOffset>
|
||||||
<verticalOffset>5</verticalOffset>
|
<verticalOffset>5</verticalOffset>
|
||||||
<useRandomOffset>true</useRandomOffset>
|
<useRandomOffset>true</useRandomOffset>
|
||||||
<minSafeDistanceBetweenEscorts>10</minSafeDistanceBetweenEscorts> <!-- 伴飞物之间的距离 -->
|
<minSafeDistanceBetweenEscorts>30</minSafeDistanceBetweenEscorts> <!-- 伴飞物之间的距离 -->
|
||||||
<minSafeDistanceFromMain>70</minSafeDistanceFromMain> <!-- 与主飞行物的距离检查 -->
|
<minSafeDistanceFromMain>60</minSafeDistanceFromMain> <!-- 与主飞行物的距离检查 -->
|
||||||
|
|
||||||
<!-- 飞行配置 -->
|
<!-- 飞行配置 -->
|
||||||
<escortSpeedMultiplier>10</escortSpeedMultiplier> <!-- 比主舰稍快 -->
|
<escortSpeedMultiplier>30</escortSpeedMultiplier> <!-- 比主舰稍快 -->
|
||||||
<escortAltitudeOffset>10</escortAltitudeOffset> <!-- 比主舰稍高 -->
|
<escortAltitudeOffset>10</escortAltitudeOffset> <!-- 比主舰稍高 -->
|
||||||
<mirrorMovement>false</mirrorMovement>
|
<mirrorMovement>false</mirrorMovement>
|
||||||
|
|
||||||
@@ -931,108 +875,6 @@
|
|||||||
<useFactionDiscrimination>true</useFactionDiscrimination>
|
<useFactionDiscrimination>true</useFactionDiscrimination>
|
||||||
<useMicroTracking>true</useMicroTracking>
|
<useMicroTracking>true</useMicroTracking>
|
||||||
</li>
|
</li>
|
||||||
<li Class="WulaFallenEmpire.CompProperties_ShipArtillery">
|
|
||||||
<ticksBetweenAttacks>300</ticksBetweenAttacks>
|
|
||||||
<attackDurationTicks>30</attackDurationTicks>
|
|
||||||
<attackRadius>25</attackRadius>
|
|
||||||
<skyfallerDef>WULA_Planet_Interdiction_EnergyLance_Skyfaller</skyfallerDef>
|
|
||||||
<shellsPerVolley>1</shellsPerVolley>
|
|
||||||
|
|
||||||
<!-- 新增派系甄别配置 -->
|
|
||||||
<useRandomTargets>true</useRandomTargets>
|
|
||||||
<useFactionDiscrimination>true</useFactionDiscrimination>
|
|
||||||
</li>
|
|
||||||
</comps>
|
|
||||||
</ThingDef>
|
|
||||||
<ThingDef ParentName="SkyfallerBase">
|
|
||||||
<defName>WULA_Planet_Interdiction_EnergyLance_Skyfaller</defName>
|
|
||||||
<label>光矛监视信标</label>
|
|
||||||
<size>(1,1)</size>
|
|
||||||
<graphicData>
|
|
||||||
<texPath>Wula/Weapon/WULA_Weapon_Empty</texPath>
|
|
||||||
<graphicClass>Graphic_Single</graphicClass>
|
|
||||||
<shaderType>TransparentPostLight</shaderType>
|
|
||||||
<drawSize>(1,1)</drawSize>
|
|
||||||
<color>(255,255,255,150)</color>
|
|
||||||
<damageData>
|
|
||||||
<enabled>false</enabled>
|
|
||||||
</damageData>
|
|
||||||
</graphicData>
|
|
||||||
<skyfaller>
|
|
||||||
<movementType>Decelerate</movementType>
|
|
||||||
<shadow>Things/Skyfaller/SkyfallerShadowDropPod</shadow>
|
|
||||||
<shadowSize>(0, 0)</shadowSize>
|
|
||||||
<anticipationSound>DropPod_Fall</anticipationSound>
|
|
||||||
<anticipationSoundTicks>100</anticipationSoundTicks>
|
|
||||||
<!-- <impactSound>Explosion_Vaporize</impactSound> -->
|
|
||||||
<moteSpawnTime>0.05</moteSpawnTime>
|
|
||||||
<motesPerCell>0</motesPerCell>
|
|
||||||
<cameraShake>0</cameraShake>
|
|
||||||
<angleCurve>
|
|
||||||
<points>
|
|
||||||
<li>(0,0)</li>
|
|
||||||
<li>(1, 1)</li>
|
|
||||||
</points>
|
|
||||||
</angleCurve>
|
|
||||||
<spawnThing>WULA_Planet_Interdiction_EnergyLance_Beacon</spawnThing>
|
|
||||||
</skyfaller>
|
|
||||||
</ThingDef>
|
|
||||||
<ThingDef ParentName="BuildingBase">
|
|
||||||
<defName>WULA_Planet_Interdiction_EnergyLance_Beacon</defName>
|
|
||||||
<label>光矛监视信标</label>
|
|
||||||
<description>一枚标定监视区的轰炸信标,进入此处的敌对势力都会被乌拉帝国舰队的舰炮狠狠打击。</description>
|
|
||||||
<uiIconPath>Wula/Building/WULA_WeaponArmor_Productor</uiIconPath>
|
|
||||||
<tickerType>Normal</tickerType>
|
|
||||||
<selectable>false</selectable>
|
|
||||||
<useHitPoints>false</useHitPoints>
|
|
||||||
<size>(1,1)</size>
|
|
||||||
<graphicData>
|
|
||||||
<texPath>Wula/Weapon/WULA_Weapon_Empty</texPath>
|
|
||||||
<graphicClass>Graphic_Single</graphicClass>
|
|
||||||
<shaderType>TransparentPostLight</shaderType>
|
|
||||||
<drawSize>(72,72)</drawSize>
|
|
||||||
<color>(255,255,255,150)</color>
|
|
||||||
<damageData>
|
|
||||||
<enabled>false</enabled>
|
|
||||||
</damageData>
|
|
||||||
</graphicData>
|
|
||||||
<altitudeLayer>Building</altitudeLayer>
|
|
||||||
<passability>Standable</passability>
|
|
||||||
<castEdgeShadows>false</castEdgeShadows>
|
|
||||||
<fillPercent>0.5</fillPercent>
|
|
||||||
<canOverlapZones>false</canOverlapZones>
|
|
||||||
<pathCost>0</pathCost>
|
|
||||||
<hasInteractionCell>false</hasInteractionCell>
|
|
||||||
<rotatable>false</rotatable>
|
|
||||||
<statBases>
|
|
||||||
<WorkToBuild>1</WorkToBuild>
|
|
||||||
<Mass>0</Mass>
|
|
||||||
<Flammability>0</Flammability>
|
|
||||||
</statBases>
|
|
||||||
<resourcesFractionWhenDeconstructed>0</resourcesFractionWhenDeconstructed>
|
|
||||||
<building>
|
|
||||||
<expandHomeArea>false</expandHomeArea>
|
|
||||||
<destroySound>BuildingDestroyed_Metal_Small</destroySound>
|
|
||||||
</building>
|
|
||||||
<comps>
|
|
||||||
<li Class="WulaFallenEmpire.CompProperties_EnergyLanceTurret">
|
|
||||||
<energyLanceDef>WULA_EnergyLance_Surveillance</energyLanceDef>
|
|
||||||
<energyLanceDuration>600</energyLanceDuration>
|
|
||||||
<energyLanceMoveDistance>25</energyLanceMoveDistance>
|
|
||||||
<detectionRange>36</detectionRange>
|
|
||||||
<targetUpdateInterval>30</targetUpdateInterval>
|
|
||||||
<targetSwitchRange>20</targetSwitchRange>
|
|
||||||
<warmupTicks>45</warmupTicks>
|
|
||||||
<cooldownTicks>180</cooldownTicks>
|
|
||||||
</li>
|
|
||||||
<li Class="WulaFallenEmpire.CompProperties_FactionSetter">
|
|
||||||
<!-- <factionDef>Mechanoid</factionDef> 不写默认玩家派系-->
|
|
||||||
<usePlayerFactionIfNull>true</usePlayerFactionIfNull>
|
|
||||||
<overrideExistingFaction>false</overrideExistingFaction>
|
|
||||||
</li>
|
|
||||||
<li Class="CompProperties_Lifespan">
|
|
||||||
<lifespanTicks>600</lifespanTicks>
|
|
||||||
</li>
|
|
||||||
</comps>
|
</comps>
|
||||||
</ThingDef>
|
</ThingDef>
|
||||||
|
|
||||||
|
|||||||
@@ -110,7 +110,7 @@
|
|||||||
<shaderType>CutoutComplex</shaderType>
|
<shaderType>CutoutComplex</shaderType>
|
||||||
</graphicData>
|
</graphicData>
|
||||||
<weaponTags>
|
<weaponTags>
|
||||||
<li>Wula_Melee_Weapon_T2</li>
|
<li>Wula_Melee_Weapon_T1</li>
|
||||||
</weaponTags>
|
</weaponTags>
|
||||||
<equippedAngleOffset>-65</equippedAngleOffset>
|
<equippedAngleOffset>-65</equippedAngleOffset>
|
||||||
<techLevel>Spacer</techLevel>
|
<techLevel>Spacer</techLevel>
|
||||||
|
|||||||
@@ -0,0 +1,279 @@
|
|||||||
|
using RimWorld;
|
||||||
|
using Verse;
|
||||||
|
using Verse.Sound;
|
||||||
|
|
||||||
|
namespace WulaFallenEmpire
|
||||||
|
{
|
||||||
|
// HediffCompProperties 定义
|
||||||
|
public class HediffCompProperties_DisappearWithEffect : HediffCompProperties_Disappears
|
||||||
|
{
|
||||||
|
public FleckDef fleckDef; // 要播放的特效
|
||||||
|
public float fleckScale = 1f; // 特效缩放
|
||||||
|
public bool dropEquipment = false; // 是否掉落装备(false = 直接销毁)
|
||||||
|
public bool destroyCorpse = true; // 是否销毁尸体
|
||||||
|
public bool playSound = true; // 是否播放音效
|
||||||
|
public SoundDef soundDef; // 自定义音效
|
||||||
|
|
||||||
|
public HediffCompProperties_DisappearWithEffect()
|
||||||
|
{
|
||||||
|
compClass = typeof(HediffComp_DisappearWithEffect);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// HediffComp 实现
|
||||||
|
public class HediffComp_DisappearWithEffect : HediffComp
|
||||||
|
{
|
||||||
|
public HediffCompProperties_DisappearWithEffect Props =>
|
||||||
|
(HediffCompProperties_DisappearWithEffect)props;
|
||||||
|
|
||||||
|
private int ticksUntilDisappear = -1;
|
||||||
|
private bool triggered = false;
|
||||||
|
|
||||||
|
public override void CompPostMake()
|
||||||
|
{
|
||||||
|
base.CompPostMake();
|
||||||
|
if (Props.disappearsAfterTicks != null)
|
||||||
|
{
|
||||||
|
ticksUntilDisappear = Props.disappearsAfterTicks.RandomInRange;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重写 CompPostTick 方法,在到达指定 tick 时触发效果
|
||||||
|
public override void CompPostTick(ref float severityAdjustment)
|
||||||
|
{
|
||||||
|
base.CompPostTick(ref severityAdjustment);
|
||||||
|
|
||||||
|
if (triggered || Pawn == null || Pawn.Destroyed) return;
|
||||||
|
|
||||||
|
// 检查是否到达消失时间
|
||||||
|
if (ticksUntilDisappear > 0)
|
||||||
|
{
|
||||||
|
ticksUntilDisappear--;
|
||||||
|
if (ticksUntilDisappear <= 0)
|
||||||
|
{
|
||||||
|
TriggerDisappearEffect();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 如果 pawn 已经死亡,立即触发效果
|
||||||
|
else if (Pawn.Dead)
|
||||||
|
{
|
||||||
|
TriggerDisappearEffect();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 处理 pawn 死亡事件 - 修复参数问题
|
||||||
|
public override void Notify_PawnDied(DamageInfo? dinfo, Hediff culprit = null)
|
||||||
|
{
|
||||||
|
base.Notify_PawnDied(dinfo, culprit);
|
||||||
|
if (!triggered)
|
||||||
|
{
|
||||||
|
TriggerDisappearEffect();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 触发消失效果的核心方法
|
||||||
|
private void TriggerDisappearEffect()
|
||||||
|
{
|
||||||
|
if (triggered || Pawn == null || Pawn.Map == null || Pawn.Destroyed)
|
||||||
|
return;
|
||||||
|
|
||||||
|
triggered = true;
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// 记录位置
|
||||||
|
IntVec3 position = Pawn.Position;
|
||||||
|
Map map = Pawn.Map;
|
||||||
|
|
||||||
|
// 1. 清除所有装备
|
||||||
|
ClearAllEquipment(map);
|
||||||
|
|
||||||
|
// 2. 播放特效
|
||||||
|
PlayFleckEffect(position, map);
|
||||||
|
|
||||||
|
// 3. 播放音效
|
||||||
|
PlaySoundEffect(position, map);
|
||||||
|
|
||||||
|
// 4. 发送消失消息(如果配置了)
|
||||||
|
SendDisappearMessage();
|
||||||
|
|
||||||
|
// 5. 删除 pawn
|
||||||
|
DestroyPawn();
|
||||||
|
|
||||||
|
Log.Message($"[DisappearWithEffect] Pawn {Pawn.LabelCap} disappeared at {position}");
|
||||||
|
}
|
||||||
|
catch (System.Exception ex)
|
||||||
|
{
|
||||||
|
Log.Error($"[DisappearWithEffect] Error in TriggerDisappearEffect: {ex}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 清除所有装备 - 修复参数问题
|
||||||
|
private void ClearAllEquipment(Map map)
|
||||||
|
{
|
||||||
|
if (Pawn.equipment == null && Pawn.apparel == null && Pawn.inventory == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// 清除装备(武器)
|
||||||
|
if (Pawn.equipment != null)
|
||||||
|
{
|
||||||
|
var allEquipment = Pawn.equipment.AllEquipmentListForReading.ListFullCopy();
|
||||||
|
foreach (var thing in allEquipment)
|
||||||
|
{
|
||||||
|
if (Props.dropEquipment)
|
||||||
|
{
|
||||||
|
// 掉落装备 - 修复类型转换问题
|
||||||
|
ThingWithComps droppedWeapon;
|
||||||
|
Pawn.equipment.TryDropEquipment(thing, out droppedWeapon, Pawn.Position, true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// 直接销毁装备
|
||||||
|
thing.Destroy(DestroyMode.Vanish);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 清除 apparel(服装)
|
||||||
|
if (Pawn.apparel != null)
|
||||||
|
{
|
||||||
|
var wornApparel = Pawn.apparel.WornApparel.ListFullCopy();
|
||||||
|
foreach (var apparel in wornApparel)
|
||||||
|
{
|
||||||
|
if (Props.dropEquipment)
|
||||||
|
{
|
||||||
|
// 掉落服装
|
||||||
|
Apparel droppedApparel;
|
||||||
|
Pawn.apparel.TryDrop(apparel, out droppedApparel, Pawn.Position, true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// 直接销毁服装
|
||||||
|
apparel.Destroy(DestroyMode.Vanish);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 清除 inventory(物品栏)
|
||||||
|
if (Pawn.inventory != null)
|
||||||
|
{
|
||||||
|
var innerContainer = Pawn.inventory.innerContainer.InnerListForReading.ListFullCopy();
|
||||||
|
foreach (var thing in innerContainer)
|
||||||
|
{
|
||||||
|
if (Props.dropEquipment)
|
||||||
|
{
|
||||||
|
// 掉落物品
|
||||||
|
Thing droppedThing;
|
||||||
|
Pawn.inventory.innerContainer.TryDrop(thing, Pawn.Position, map, ThingPlaceMode.Near, out droppedThing);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// 直接销毁物品
|
||||||
|
thing.Destroy(DestroyMode.Vanish);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 播放特效
|
||||||
|
private void PlayFleckEffect(IntVec3 position, Map map)
|
||||||
|
{
|
||||||
|
FleckDef fleckToUse = Props.fleckDef ?? FleckDefOf.PsycastAreaEffect;
|
||||||
|
|
||||||
|
// 在 pawn 位置播放特效
|
||||||
|
FleckMaker.Static(position, map, fleckToUse, Props.fleckScale);
|
||||||
|
|
||||||
|
// 额外在周围格子上播放特效,增强视觉效果
|
||||||
|
for (int i = 0; i < 8; i++)
|
||||||
|
{
|
||||||
|
IntVec3 nearbyCell = position + GenAdj.AdjacentCells[i];
|
||||||
|
if (nearbyCell.InBounds(map))
|
||||||
|
{
|
||||||
|
FleckMaker.Static(nearbyCell, map, fleckToUse, Props.fleckScale * 0.7f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 播放音效 - 修复音效播放问题
|
||||||
|
private void PlaySoundEffect(IntVec3 position, Map map)
|
||||||
|
{
|
||||||
|
if (!Props.playSound) return;
|
||||||
|
|
||||||
|
SoundDef soundToUse = Props.soundDef ?? SoundDefOf.PsycastPsychicPulse;
|
||||||
|
|
||||||
|
// 使用 SoundStarter 播放音效
|
||||||
|
SoundInfo soundInfo = SoundInfo.InMap(new TargetInfo(position, map));
|
||||||
|
soundToUse.PlayOneShot(soundInfo);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 发送消失消息
|
||||||
|
private void SendDisappearMessage()
|
||||||
|
{
|
||||||
|
var disappearProps = props as HediffCompProperties_Disappears;
|
||||||
|
if (disappearProps?.messageOnDisappear != null)
|
||||||
|
{
|
||||||
|
Messages.Message(disappearProps.messageOnDisappear.Translate(Pawn.LabelShort),
|
||||||
|
Pawn, MessageTypeDefOf.NeutralEvent);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (disappearProps?.letterLabelOnDisappear != null &&
|
||||||
|
disappearProps?.letterTextOnDisappear != null &&
|
||||||
|
Pawn.Faction == Faction.OfPlayer)
|
||||||
|
{
|
||||||
|
Find.LetterStack.ReceiveLetter(
|
||||||
|
disappearProps.letterLabelOnDisappear.Translate(Pawn.LabelShort),
|
||||||
|
disappearProps.letterTextOnDisappear.Translate(Pawn.LabelShort),
|
||||||
|
LetterDefOf.NeutralEvent,
|
||||||
|
new LookTargets(Pawn)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除 pawn
|
||||||
|
private void DestroyPawn()
|
||||||
|
{
|
||||||
|
if (Pawn.Dead && Props.destroyCorpse)
|
||||||
|
{
|
||||||
|
// 如果是尸体,直接销毁
|
||||||
|
Pawn.Destroy();
|
||||||
|
}
|
||||||
|
else if (!Pawn.Dead)
|
||||||
|
{
|
||||||
|
// 如果是活着的 pawn,先杀死再销毁
|
||||||
|
Pawn.Kill(null, this.parent);
|
||||||
|
if (Props.destroyCorpse)
|
||||||
|
{
|
||||||
|
Pawn.Destroy();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重写 CompTipStringExtra 显示额外信息
|
||||||
|
public override string CompTipStringExtra
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (ticksUntilDisappear > 0 && Props.showRemainingTime)
|
||||||
|
{
|
||||||
|
return "DisappearWithEffect_TimeRemaining".Translate(
|
||||||
|
ticksUntilDisappear.ToStringTicksToPeriod(Props.canUseDecimalsShortForm));
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重写 CompDebugString 用于调试
|
||||||
|
public override string CompDebugString()
|
||||||
|
{
|
||||||
|
return $"Will disappear in: {ticksUntilDisappear} ticks (Triggered: {triggered})";
|
||||||
|
}
|
||||||
|
|
||||||
|
// 序列化数据
|
||||||
|
public override void CompExposeData()
|
||||||
|
{
|
||||||
|
base.CompExposeData();
|
||||||
|
Scribe_Values.Look(ref ticksUntilDisappear, "ticksUntilDisappear", -1);
|
||||||
|
Scribe_Values.Look(ref triggered, "triggered", false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -160,6 +160,7 @@
|
|||||||
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_CaravanFormingUtility_AllSendablePawns.cs" />
|
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_CaravanFormingUtility_AllSendablePawns.cs" />
|
||||||
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_Pawn_ThreatDisabled.cs" />
|
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_Pawn_ThreatDisabled.cs" />
|
||||||
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_UncontrolledMechDrawPulse.cs" />
|
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_UncontrolledMechDrawPulse.cs" />
|
||||||
|
<Compile Include="HediffComp\HediffCompProperties_DisappearWithEffect .cs" />
|
||||||
<Compile Include="HediffComp\HediffCompProperties_NanoRepair.cs" />
|
<Compile Include="HediffComp\HediffCompProperties_NanoRepair.cs" />
|
||||||
<Compile Include="HediffComp\HediffCompProperties_SwitchableHediff.cs" />
|
<Compile Include="HediffComp\HediffCompProperties_SwitchableHediff.cs" />
|
||||||
<Compile Include="HediffComp\WULA_HediffDamgeShield\DRMDamageShield.cs" />
|
<Compile Include="HediffComp\WULA_HediffDamgeShield\DRMDamageShield.cs" />
|
||||||
|
|||||||
Reference in New Issue
Block a user