暂存
This commit is contained in:
Binary file not shown.
@@ -32,91 +32,6 @@
|
|||||||
</comps>
|
</comps>
|
||||||
</AbilityDef>
|
</AbilityDef>
|
||||||
|
|
||||||
<AbilityDef Name="ARA_EggSpew_Base" Abstract="True">
|
|
||||||
<cooldownTicksRange>5000</cooldownTicksRange>
|
|
||||||
<aiCanUse>false</aiCanUse>
|
|
||||||
<displayOrder>300</displayOrder>
|
|
||||||
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
|
|
||||||
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
|
|
||||||
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
|
|
||||||
<verbProperties>
|
|
||||||
<verbClass>Verb_CastAbility</verbClass>
|
|
||||||
<range>1</range>
|
|
||||||
<warmupTime>7</warmupTime>
|
|
||||||
<soundCast>AcidSpray_Resolve</soundCast>
|
|
||||||
<violent>false</violent>
|
|
||||||
<targetable>false</targetable>
|
|
||||||
<targetParams>
|
|
||||||
<canTargetSelf>True</canTargetSelf>
|
|
||||||
</targetParams>
|
|
||||||
</verbProperties>
|
|
||||||
<comps>
|
|
||||||
<li Class="ArachnaeSwarm.CompProperties_AbilityNeedCost">
|
|
||||||
<needDef>Food</needDef>
|
|
||||||
<needCost>4</needCost>
|
|
||||||
<failMessage>营养值不足,需要进食</failMessage>
|
|
||||||
</li>
|
|
||||||
<li Class="ArachnaeSwarm.CompProperties_AbilityBodyPartCheck">
|
|
||||||
<requiredPart>ARA_Ovary</requiredPart>
|
|
||||||
<failMessage>卵巢受损或缺失,无法生育</failMessage>
|
|
||||||
</li>
|
|
||||||
</comps>
|
|
||||||
</AbilityDef>
|
|
||||||
<ThingDef Name="ARA_EggSpew_Base_Proj" ParentName="BaseGrenadeProjectile" Abstract="True">
|
|
||||||
<thingClass>Projectile_SpawnsThing</thingClass>
|
|
||||||
<graphicData>
|
|
||||||
<texPath>ArachnaeSwarm/Building/ARA_EggSac</texPath>
|
|
||||||
<graphicClass>Graphic_Single</graphicClass>
|
|
||||||
</graphicData>
|
|
||||||
<projectile>
|
|
||||||
<damageDef>Bullet</damageDef>
|
|
||||||
<speed>21</speed>
|
|
||||||
<damageAmountBase>0</damageAmountBase>
|
|
||||||
<tryAdjacentFreeSpaces>true</tryAdjacentFreeSpaces>
|
|
||||||
</projectile>
|
|
||||||
</ThingDef>
|
|
||||||
|
|
||||||
<AbilityDef Name="ARA_CocoonSpew_Base" Abstract="True">
|
|
||||||
<cooldownTicksRange>5000</cooldownTicksRange>
|
|
||||||
<aiCanUse>true</aiCanUse>
|
|
||||||
<displayOrder>300</displayOrder>
|
|
||||||
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
|
|
||||||
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
|
|
||||||
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
|
|
||||||
<verbProperties>
|
|
||||||
<verbClass>Verb_CastAbility</verbClass>
|
|
||||||
<range>1</range>
|
|
||||||
<warmupTime>12</warmupTime>
|
|
||||||
<soundCast>AcidSpray_Resolve</soundCast>
|
|
||||||
<violent>false</violent>
|
|
||||||
<targetable>false</targetable>
|
|
||||||
<targetParams>
|
|
||||||
<canTargetSelf>True</canTargetSelf>
|
|
||||||
</targetParams>
|
|
||||||
</verbProperties>
|
|
||||||
<comps>
|
|
||||||
<li Class="ArachnaeSwarm.CompProperties_AbilityNeedCost">
|
|
||||||
<needDef>Food</needDef>
|
|
||||||
<needCost>1</needCost>
|
|
||||||
<failMessage>营养值不足,需要进食</failMessage>
|
|
||||||
</li>
|
|
||||||
</comps>
|
|
||||||
</AbilityDef>
|
|
||||||
<ThingDef Name="ARA_CocoonSpew_Base_Proj" ParentName="BaseGrenadeProjectile" Abstract="True">
|
|
||||||
<label>阿拉克涅孵化茧</label>
|
|
||||||
<thingClass>Projectile_SpawnsThing</thingClass>
|
|
||||||
<graphicData>
|
|
||||||
<texPath>ArachnaeSwarm/Building/ARA_BioforgeIncubator</texPath>
|
|
||||||
<graphicClass>Graphic_Single</graphicClass>
|
|
||||||
</graphicData>
|
|
||||||
<projectile>
|
|
||||||
<damageDef>Bullet</damageDef>
|
|
||||||
<speed>21</speed>
|
|
||||||
<damageAmountBase>0</damageAmountBase>
|
|
||||||
<tryAdjacentFreeSpaces>true</tryAdjacentFreeSpaces>
|
|
||||||
</projectile>
|
|
||||||
</ThingDef>
|
|
||||||
|
|
||||||
<AbilityDef>
|
<AbilityDef>
|
||||||
<defName>ARA_AcidSprayBurst_Queen</defName>
|
<defName>ARA_AcidSprayBurst_Queen</defName>
|
||||||
<label>女皇种酸液轰炸</label>
|
<label>女皇种酸液轰炸</label>
|
||||||
|
|||||||
120
1.6/1.6/Defs/AbilityDefs/Abilities_EggSpew.xml
Normal file
120
1.6/1.6/Defs/AbilityDefs/Abilities_EggSpew.xml
Normal file
@@ -0,0 +1,120 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
|
||||||
|
<AbilityDef Name="ARA_EggSpew_Base" Abstract="True">
|
||||||
|
<cooldownTicksRange>5000</cooldownTicksRange>
|
||||||
|
<aiCanUse>false</aiCanUse>
|
||||||
|
<displayOrder>300</displayOrder>
|
||||||
|
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
|
||||||
|
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
|
||||||
|
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
|
||||||
|
<verbProperties>
|
||||||
|
<verbClass>Verb_CastAbility</verbClass>
|
||||||
|
<range>1</range>
|
||||||
|
<warmupTime>7</warmupTime>
|
||||||
|
<soundCast>AcidSpray_Resolve</soundCast>
|
||||||
|
<violent>false</violent>
|
||||||
|
<targetable>false</targetable>
|
||||||
|
<targetParams>
|
||||||
|
<canTargetSelf>True</canTargetSelf>
|
||||||
|
</targetParams>
|
||||||
|
</verbProperties>
|
||||||
|
<comps>
|
||||||
|
<li Class="ArachnaeSwarm.CompProperties_AbilityNeedCost">
|
||||||
|
<needDef>Food</needDef>
|
||||||
|
<needCost>4</needCost>
|
||||||
|
<failMessage>营养值不足,需要进食</failMessage>
|
||||||
|
</li>
|
||||||
|
<li Class="ArachnaeSwarm.CompProperties_AbilityBodyPartCheck">
|
||||||
|
<requiredPart>ARA_Ovary</requiredPart>
|
||||||
|
<failMessage>卵巢受损或缺失,无法生育</failMessage>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</AbilityDef>
|
||||||
|
|
||||||
|
<ThingDef Name="ARA_EggSpew_Base_Proj" ParentName="BaseGrenadeProjectile" Abstract="True">
|
||||||
|
<thingClass>Projectile_SpawnsThing</thingClass>
|
||||||
|
<graphicData>
|
||||||
|
<texPath>ArachnaeSwarm/Building/ARA_EggSac</texPath>
|
||||||
|
<graphicClass>Graphic_Single</graphicClass>
|
||||||
|
</graphicData>
|
||||||
|
<projectile>
|
||||||
|
<damageDef>Bullet</damageDef>
|
||||||
|
<speed>21</speed>
|
||||||
|
<damageAmountBase>0</damageAmountBase>
|
||||||
|
<tryAdjacentFreeSpaces>true</tryAdjacentFreeSpaces>
|
||||||
|
</projectile>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
|
<AbilityDef Name="ARA_CocoonSpew_Base" Abstract="True">
|
||||||
|
<cooldownTicksRange>5000</cooldownTicksRange>
|
||||||
|
<aiCanUse>true</aiCanUse>
|
||||||
|
<displayOrder>300</displayOrder>
|
||||||
|
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
|
||||||
|
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
|
||||||
|
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
|
||||||
|
<verbProperties>
|
||||||
|
<verbClass>Verb_CastAbility</verbClass>
|
||||||
|
<range>1</range>
|
||||||
|
<warmupTime>12</warmupTime>
|
||||||
|
<soundCast>AcidSpray_Resolve</soundCast>
|
||||||
|
<violent>false</violent>
|
||||||
|
<targetable>false</targetable>
|
||||||
|
<targetParams>
|
||||||
|
<canTargetSelf>True</canTargetSelf>
|
||||||
|
</targetParams>
|
||||||
|
</verbProperties>
|
||||||
|
<comps>
|
||||||
|
<li Class="ArachnaeSwarm.CompProperties_AbilityNeedCost">
|
||||||
|
<needDef>Food</needDef>
|
||||||
|
<needCost>1</needCost>
|
||||||
|
<failMessage>营养值不足,需要进食</failMessage>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</AbilityDef>
|
||||||
|
|
||||||
|
<ThingDef Name="ARA_CocoonSpew_Base_Proj" ParentName="BaseGrenadeProjectile" Abstract="True">
|
||||||
|
<label>阿拉克涅孵化茧</label>
|
||||||
|
<thingClass>Projectile_SpawnsThing</thingClass>
|
||||||
|
<graphicData>
|
||||||
|
<texPath>ArachnaeSwarm/Building/ARA_BioforgeIncubator</texPath>
|
||||||
|
<graphicClass>Graphic_Single</graphicClass>
|
||||||
|
</graphicData>
|
||||||
|
<projectile>
|
||||||
|
<damageDef>Bullet</damageDef>
|
||||||
|
<speed>21</speed>
|
||||||
|
<damageAmountBase>0</damageAmountBase>
|
||||||
|
<tryAdjacentFreeSpaces>true</tryAdjacentFreeSpaces>
|
||||||
|
</projectile>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
|
<AbilityDef ParentName="ARA_EggSpew_Base">
|
||||||
|
<defName>ARA_EggSpew_BaseFighter</defName>
|
||||||
|
<label>生育虫卵-战士虫</label>
|
||||||
|
<description>从卵巢中排出一颗休眠的虫卵,阿拉克涅女皇种可以通过与其交互将其激活,并选择孵化的督虫虫族类型——参阅虫卵的具体信息,了解各个督虫的特点。</description>
|
||||||
|
<iconPath>UI/Commands/EggSpew</iconPath>
|
||||||
|
<comps>
|
||||||
|
<li Class="CompProperties_AbilityLaunchProjectile">
|
||||||
|
<projectileDef>ARA_Proj_EggSac_BaseFighter</projectileDef>
|
||||||
|
</li>
|
||||||
|
<li Class="ArachnaeSwarm.CompProperties_AbilityResearchPrereq">
|
||||||
|
<requiredResearch>ARA_Technology_1KYC</requiredResearch>
|
||||||
|
<failMessage>需要科技 基因节点KYC-1"战士虫" 以解锁此孵化路径</failMessage>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</AbilityDef>
|
||||||
|
|
||||||
|
<AbilityDef ParentName="ARA_EggSpew_Base">
|
||||||
|
<defName>ARA_EggSpew</defName>
|
||||||
|
<label>生育虫卵</label>
|
||||||
|
<description>从卵巢中排出一颗休眠的虫卵,阿拉克涅女皇种可以通过与其交互将其激活,并选择孵化的督虫虫族类型——参阅虫卵的具体信息,了解各个督虫的特点。</description>
|
||||||
|
<iconPath>UI/Commands/EggSpew</iconPath>
|
||||||
|
<comps>
|
||||||
|
<li Class="CompProperties_AbilityLaunchProjectile">
|
||||||
|
<projectileDef>ARA_Proj_EggSac</projectileDef>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</AbilityDef>
|
||||||
|
|
||||||
|
|
||||||
|
</Defs>
|
||||||
@@ -984,119 +984,7 @@
|
|||||||
</lifeStageAges>
|
</lifeStageAges>
|
||||||
</race>
|
</race>
|
||||||
</AlienRace.ThingDef_AlienRace>
|
</AlienRace.ThingDef_AlienRace>
|
||||||
<AbilityDef ParentName="ARA_EggSpew_Base">
|
|
||||||
<defName>ARA_EggSpew</defName>
|
|
||||||
<label>生育虫卵</label>
|
|
||||||
<description>从卵巢中排出一颗休眠的虫卵,阿拉克涅女皇种可以通过与其交互将其激活,并选择孵化的督虫虫族类型——参阅虫卵的具体信息,了解各个督虫的特点。</description>
|
|
||||||
<iconPath>UI/Commands/EggSpew</iconPath>
|
|
||||||
<comps>
|
|
||||||
<li Class="CompProperties_AbilityLaunchProjectile">
|
|
||||||
<projectileDef>ARA_Proj_EggSac</projectileDef>
|
|
||||||
</li>
|
|
||||||
</comps>
|
|
||||||
</AbilityDef>
|
|
||||||
<ThingDef ParentName="ARA_EggSpew_Base_Proj">
|
|
||||||
<defName>ARA_Proj_EggSac</defName>
|
|
||||||
<label>阿拉克涅虫卵</label>
|
|
||||||
<projectile>
|
|
||||||
<spawnsThingDef>ARA_InteractiveEggSac</spawnsThingDef>
|
|
||||||
</projectile>
|
|
||||||
</ThingDef>
|
|
||||||
<ThingDef ParentName="ARA_InteractiveEggSac_Base">
|
|
||||||
<defName>ARA_InteractiveEggSac</defName>
|
|
||||||
<label>阿拉克涅虫卵囊</label>
|
|
||||||
<description>一个脆弱、易燃、黏滑的囊状物,是阿拉克涅女皇种所诞之卵,内含哺育一只新督虫所需的营养和遗传物质,可以通过阿拉克涅女皇种的交互完成激活进程——参阅虫卵的超链接,了解各个督虫的特点。\n\n卵囊对温度极度敏感(该类型的卵适温为-25~30°C),需要小心保护!</description>
|
|
||||||
<descriptionHyperlinks>
|
|
||||||
<ThingDef>ArachnaeNode_Race_Myrmecocystus</ThingDef>
|
|
||||||
<ThingDef>ArachnaeNode_Race_ShieldHead</ThingDef>
|
|
||||||
<ThingDef>ArachnaeNode_Race_WeaponSmith</ThingDef>
|
|
||||||
</descriptionHyperlinks>
|
|
||||||
<researchPrerequisites>
|
|
||||||
<li>ARA_Base_Technology</li>
|
|
||||||
</researchPrerequisites>
|
|
||||||
|
|
||||||
<comps>
|
|
||||||
<li Class="ArachnaeSwarm.CompProperties_SpawnPawnFromList">
|
|
||||||
<pawnKinds>
|
|
||||||
<li>ArachnaeNode_Race_Myrmecocystus</li>
|
|
||||||
<li>ArachnaeNode_Race_ShieldHead</li>
|
|
||||||
<li>ArachnaeNode_Race_WeaponSmith</li>
|
|
||||||
</pawnKinds>
|
|
||||||
<whitelist>
|
|
||||||
<li>ARA_ArachnaeQueen</li>
|
|
||||||
</whitelist>
|
|
||||||
<pawnKindDelays>
|
|
||||||
<li>
|
|
||||||
<pawnKind>ArachnaeNode_Race_Myrmecocystus</pawnKind>
|
|
||||||
<delay>180000</delay>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<pawnKind>ArachnaeNode_Race_ShieldHead</pawnKind>
|
|
||||||
<delay>180000</delay>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<pawnKind>ArachnaeNode_Race_WeaponSmith</pawnKind>
|
|
||||||
<delay>180000</delay>
|
|
||||||
</li>
|
|
||||||
</pawnKindDelays>
|
|
||||||
<destroyOnSpawn>true</destroyOnSpawn>
|
|
||||||
</li>
|
|
||||||
<li Class="ArachnaeSwarm.CompProperties_TemperatureRuinableDamage">
|
|
||||||
<minSafeTemperature>-25</minSafeTemperature>
|
|
||||||
<maxSafeTemperature>30</maxSafeTemperature>
|
|
||||||
<progressPerDegreePerTick>0.00005</progressPerDegreePerTick>
|
|
||||||
<damagePerTick>0.005</damagePerTick>
|
|
||||||
<recoveryRate>0.001</recoveryRate>
|
|
||||||
</li>
|
|
||||||
</comps>
|
|
||||||
</ThingDef>
|
|
||||||
<ThingDef ParentName="ARA_InteractiveEggSac_Base">
|
|
||||||
<defName>ARA_InteractiveEggSac_Start</defName>
|
|
||||||
<label>初诞阿拉克涅虫卵囊</label>
|
|
||||||
<description>一个脆弱、易燃、黏滑的囊状物,是阿拉克涅女皇种初到此地所诞之卵,内含哺育一只新督虫所需的营养和遗传物质,可以通过阿拉克涅女皇种的交互完成激活进程。\n\n初诞卵囊可以抵御极端天气并且拥有极快的孵化速度,但是它们只能支持少数几种虫族的孵化。</description>
|
|
||||||
<minifiedDef Inherit="False" />
|
|
||||||
<thingCategories Inherit="False" />
|
|
||||||
<descriptionHyperlinks>
|
|
||||||
<ThingDef>ArachnaeNode_Race_Myrmecocystus</ThingDef>
|
|
||||||
<ThingDef>ArachnaeNode_Race_ShieldHead</ThingDef>
|
|
||||||
<ThingDef>ArachnaeNode_Race_WeaponSmith</ThingDef>
|
|
||||||
</descriptionHyperlinks>
|
|
||||||
|
|
||||||
<comps>
|
|
||||||
<li Class="ArachnaeSwarm.CompProperties_SpawnPawnFromList">
|
|
||||||
<pawnKinds>
|
|
||||||
<li>ArachnaeNode_Race_Myrmecocystus</li>
|
|
||||||
<li>ArachnaeNode_Race_ShieldHead</li>
|
|
||||||
<li>ArachnaeNode_Race_WeaponSmith</li>
|
|
||||||
</pawnKinds>
|
|
||||||
<whitelist>
|
|
||||||
<li>ARA_ArachnaeQueen</li>
|
|
||||||
</whitelist>
|
|
||||||
<pawnKindDelays>
|
|
||||||
<li>
|
|
||||||
<pawnKind>ArachnaeNode_Race_Myrmecocystus</pawnKind>
|
|
||||||
<delay>300</delay>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<pawnKind>ArachnaeNode_Race_ShieldHead</pawnKind>
|
|
||||||
<delay>300</delay>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<pawnKind>ArachnaeNode_Race_WeaponSmith</pawnKind>
|
|
||||||
<delay>300</delay>
|
|
||||||
</li>
|
|
||||||
</pawnKindDelays>
|
|
||||||
<destroyOnSpawn>true</destroyOnSpawn>
|
|
||||||
</li>
|
|
||||||
<li Class="ArachnaeSwarm.CompProperties_TemperatureRuinableDamage">
|
|
||||||
<minSafeTemperature>-300</minSafeTemperature>
|
|
||||||
<maxSafeTemperature>100</maxSafeTemperature>
|
|
||||||
<progressPerDegreePerTick>0.00005</progressPerDegreePerTick>
|
|
||||||
<damagePerTick>0.005</damagePerTick>
|
|
||||||
<recoveryRate>0.001</recoveryRate>
|
|
||||||
</li>
|
|
||||||
</comps>
|
|
||||||
</ThingDef>
|
|
||||||
|
|
||||||
<AlienRace.ThingDef_AlienRace ParentName="ARA_NodeBase">
|
<AlienRace.ThingDef_AlienRace ParentName="ARA_NodeBase">
|
||||||
<defName>ArachnaeNode_Race_Fighter</defName>
|
<defName>ArachnaeNode_Race_Fighter</defName>
|
||||||
@@ -1187,64 +1075,7 @@
|
|||||||
</lifeStageAges>
|
</lifeStageAges>
|
||||||
</race>
|
</race>
|
||||||
</AlienRace.ThingDef_AlienRace>
|
</AlienRace.ThingDef_AlienRace>
|
||||||
<AbilityDef ParentName="ARA_EggSpew_Base">
|
|
||||||
<defName>ARA_EggSpew_BaseFighter</defName>
|
|
||||||
<label>生育虫卵-战士虫</label>
|
|
||||||
<description>从卵巢中排出一颗休眠的虫卵,阿拉克涅女皇种可以通过与其交互将其激活,并选择孵化的督虫虫族类型——参阅虫卵的具体信息,了解各个督虫的特点。</description>
|
|
||||||
<iconPath>UI/Commands/EggSpew</iconPath>
|
|
||||||
<comps>
|
|
||||||
<li Class="CompProperties_AbilityLaunchProjectile">
|
|
||||||
<projectileDef>ARA_Proj_EggSac_BaseFighter</projectileDef>
|
|
||||||
</li>
|
|
||||||
<li Class="ArachnaeSwarm.CompProperties_AbilityResearchPrereq">
|
|
||||||
<requiredResearch>ARA_Technology_1KYC</requiredResearch>
|
|
||||||
<failMessage>需要科技 基因节点KYC-1"战士虫" 以解锁此孵化路径</failMessage>
|
|
||||||
</li>
|
|
||||||
</comps>
|
|
||||||
</AbilityDef>
|
|
||||||
<ThingDef ParentName="ARA_EggSpew_Base_Proj">
|
|
||||||
<defName>ARA_Proj_EggSac_BaseFighter</defName>
|
|
||||||
<label>阿拉克涅虫卵</label>
|
|
||||||
<projectile>
|
|
||||||
<spawnsThingDef>ARA_InteractiveEggSac_Basic_Fighter</spawnsThingDef>
|
|
||||||
</projectile>
|
|
||||||
</ThingDef>
|
|
||||||
<ThingDef ParentName="ARA_InteractiveEggSac_Base">
|
|
||||||
<defName>ARA_InteractiveEggSac_Basic_Fighter</defName>
|
|
||||||
<label>阿拉克涅虫卵囊 战士虫</label>
|
|
||||||
<description>一个脆弱、易燃、黏滑的囊状物,是阿拉克涅女皇种所诞之卵,内含哺育一只新督虫所需的营养和遗传物质,可以通过阿拉克涅女皇种的交互完成激活进程——参阅虫卵的超链接,了解各个督虫的特点。\n\n卵囊对温度极度敏感(该类型的卵适温为-10~22°C),需要小心保护!</description>
|
|
||||||
<descriptionHyperlinks>
|
|
||||||
<ThingDef>ArachnaeNode_Race_Fighter</ThingDef>
|
|
||||||
</descriptionHyperlinks>
|
|
||||||
<researchPrerequisites>
|
|
||||||
<li>ARA_Technology_1KYC</li>
|
|
||||||
</researchPrerequisites>
|
|
||||||
|
|
||||||
<comps>
|
|
||||||
<li Class="ArachnaeSwarm.CompProperties_SpawnPawnFromList">
|
|
||||||
<pawnKinds>
|
|
||||||
<li>ArachnaeNode_Race_Fighter</li>
|
|
||||||
</pawnKinds>
|
|
||||||
<whitelist>
|
|
||||||
<li>ARA_ArachnaeQueen</li>
|
|
||||||
</whitelist>
|
|
||||||
<pawnKindDelays>
|
|
||||||
<li>
|
|
||||||
<pawnKind>ArachnaeNode_Race_Fighter</pawnKind>
|
|
||||||
<delay>12</delay>
|
|
||||||
</li>
|
|
||||||
</pawnKindDelays>
|
|
||||||
<destroyOnSpawn>true</destroyOnSpawn>
|
|
||||||
</li>
|
|
||||||
<li Class="ArachnaeSwarm.CompProperties_TemperatureRuinableDamage">
|
|
||||||
<minSafeTemperature>-10</minSafeTemperature>
|
|
||||||
<maxSafeTemperature>22</maxSafeTemperature>
|
|
||||||
<progressPerDegreePerTick>0.00005</progressPerDegreePerTick>
|
|
||||||
<damagePerTick>0.005</damagePerTick>
|
|
||||||
<recoveryRate>0.001</recoveryRate>
|
|
||||||
</li>
|
|
||||||
</comps>
|
|
||||||
</ThingDef>
|
|
||||||
|
|
||||||
<AlienRace.ThingDef_AlienRace ParentName="ARA_NodeBase">
|
<AlienRace.ThingDef_AlienRace ParentName="ARA_NodeBase">
|
||||||
<defName>ArachnaeNode_Race_Facehugger</defName>
|
<defName>ArachnaeNode_Race_Facehugger</defName>
|
||||||
|
|||||||
@@ -51,4 +51,143 @@
|
|||||||
</li>
|
</li>
|
||||||
</comps>
|
</comps>
|
||||||
</ThingDef>
|
</ThingDef>
|
||||||
</Defs>
|
|
||||||
|
<ThingDef ParentName="ARA_EggSpew_Base_Proj">
|
||||||
|
<defName>ARA_Proj_EggSac_BaseFighter</defName>
|
||||||
|
<label>阿拉克涅虫卵</label>
|
||||||
|
<projectile>
|
||||||
|
<spawnsThingDef>ARA_InteractiveEggSac_Basic_Fighter</spawnsThingDef>
|
||||||
|
</projectile>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
|
<ThingDef ParentName="ARA_InteractiveEggSac_Base">
|
||||||
|
<defName>ARA_InteractiveEggSac_Basic_Fighter</defName>
|
||||||
|
<label>阿拉克涅虫卵囊 战士虫</label>
|
||||||
|
<description>一个脆弱、易燃、黏滑的囊状物,是阿拉克涅女皇种所诞之卵,内含哺育一只新督虫所需的营养和遗传物质,可以通过阿拉克涅女皇种的交互完成激活进程——参阅虫卵的超链接,了解各个督虫的特点。\n\n卵囊对温度极度敏感(该类型的卵适温为-10~22°C),需要小心保护!</description>
|
||||||
|
<descriptionHyperlinks>
|
||||||
|
<ThingDef>ArachnaeNode_Race_Fighter</ThingDef>
|
||||||
|
</descriptionHyperlinks>
|
||||||
|
<researchPrerequisites>
|
||||||
|
<li>ARA_Technology_1KYC</li>
|
||||||
|
</researchPrerequisites>
|
||||||
|
|
||||||
|
<comps>
|
||||||
|
<li Class="ArachnaeSwarm.CompProperties_SpawnPawnFromList">
|
||||||
|
<spawnablePawns>
|
||||||
|
<li>
|
||||||
|
<pawnKind>ArachnaeNode_Race_Fighter</pawnKind>
|
||||||
|
<delayTicks>12</delayTicks>
|
||||||
|
<requiredResearch>ARA_Technology_1KYC</requiredResearch>
|
||||||
|
</li>
|
||||||
|
</spawnablePawns>
|
||||||
|
<whitelist>
|
||||||
|
<li>ARA_ArachnaeQueen</li>
|
||||||
|
</whitelist>
|
||||||
|
<destroyOnSpawn>true</destroyOnSpawn>
|
||||||
|
</li>
|
||||||
|
<li Class="ArachnaeSwarm.CompProperties_TemperatureRuinableDamage">
|
||||||
|
<minSafeTemperature>-10</minSafeTemperature>
|
||||||
|
<maxSafeTemperature>22</maxSafeTemperature>
|
||||||
|
<progressPerDegreePerTick>0.00005</progressPerDegreePerTick>
|
||||||
|
<damagePerTick>0.005</damagePerTick>
|
||||||
|
<recoveryRate>0.001</recoveryRate>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
|
<ThingDef ParentName="ARA_EggSpew_Base_Proj">
|
||||||
|
<defName>ARA_Proj_EggSac</defName>
|
||||||
|
<label>阿拉克涅虫卵</label>
|
||||||
|
<projectile>
|
||||||
|
<spawnsThingDef>ARA_InteractiveEggSac</spawnsThingDef>
|
||||||
|
</projectile>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
|
<ThingDef ParentName="ARA_InteractiveEggSac_Base">
|
||||||
|
<defName>ARA_InteractiveEggSac</defName>
|
||||||
|
<label>阿拉克涅虫卵囊</label>
|
||||||
|
<description>一个脆弱、易燃、黏滑的囊状物,是阿拉克涅女皇种所诞之卵,内含哺育一只新督虫所需的营养和遗传物质,可以通过阿拉克涅女皇种的交互完成激活进程——参阅虫卵的超链接,了解各个督虫的特点。\n\n卵囊对温度极度敏感(该类型的卵适温为-25~30°C),需要小心保护!</description>
|
||||||
|
<descriptionHyperlinks>
|
||||||
|
<ThingDef>ArachnaeNode_Race_Myrmecocystus</ThingDef>
|
||||||
|
<ThingDef>ArachnaeNode_Race_ShieldHead</ThingDef>
|
||||||
|
<ThingDef>ArachnaeNode_Race_WeaponSmith</ThingDef>
|
||||||
|
</descriptionHyperlinks>
|
||||||
|
<researchPrerequisites>
|
||||||
|
<li>ARA_Base_Technology</li>
|
||||||
|
</researchPrerequisites>
|
||||||
|
|
||||||
|
<comps>
|
||||||
|
<li Class="ArachnaeSwarm.CompProperties_SpawnPawnFromList">
|
||||||
|
<spawnablePawns>
|
||||||
|
<li>
|
||||||
|
<pawnKind>ArachnaeNode_Race_Myrmecocystus</pawnKind>
|
||||||
|
<delayTicks>180000</delayTicks>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<pawnKind>ArachnaeNode_Race_ShieldHead</pawnKind>
|
||||||
|
<delayTicks>180000</delayTicks>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<pawnKind>ArachnaeNode_Race_WeaponSmith</pawnKind>
|
||||||
|
<delayTicks>180000</delayTicks>
|
||||||
|
</li>
|
||||||
|
</spawnablePawns>
|
||||||
|
<whitelist>
|
||||||
|
<li>ARA_ArachnaeQueen</li>
|
||||||
|
</whitelist>
|
||||||
|
<destroyOnSpawn>true</destroyOnSpawn>
|
||||||
|
</li>
|
||||||
|
<li Class="ArachnaeSwarm.CompProperties_TemperatureRuinableDamage">
|
||||||
|
<minSafeTemperature>-25</minSafeTemperature>
|
||||||
|
<maxSafeTemperature>30</maxSafeTemperature>
|
||||||
|
<progressPerDegreePerTick>0.00005</progressPerDegreePerTick>
|
||||||
|
<damagePerTick>0.005</damagePerTick>
|
||||||
|
<recoveryRate>0.001</recoveryRate>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
|
<ThingDef ParentName="ARA_InteractiveEggSac_Base">
|
||||||
|
<defName>ARA_InteractiveEggSac_Start</defName>
|
||||||
|
<label>初诞阿拉克涅虫卵囊</label>
|
||||||
|
<description>一个脆弱、易燃、黏滑的囊状物,是阿拉克涅女皇种初到此地所诞之卵,内含哺育一只新督虫所需的营养和遗传物质,可以通过阿拉克涅女皇种的交互完成激活进程。\n\n初诞卵囊可以抵御极端天气并且拥有极快的孵化速度,但是它们只能支持少数几种虫族的孵化。</description>
|
||||||
|
<minifiedDef Inherit="False" />
|
||||||
|
<thingCategories Inherit="False" />
|
||||||
|
<descriptionHyperlinks>
|
||||||
|
<ThingDef>ArachnaeNode_Race_Myrmecocystus</ThingDef>
|
||||||
|
<ThingDef>ArachnaeNode_Race_ShieldHead</ThingDef>
|
||||||
|
<ThingDef>ArachnaeNode_Race_WeaponSmith</ThingDef>
|
||||||
|
</descriptionHyperlinks>
|
||||||
|
|
||||||
|
<comps>
|
||||||
|
<li Class="ArachnaeSwarm.CompProperties_SpawnPawnFromList">
|
||||||
|
<spawnablePawns>
|
||||||
|
<li>
|
||||||
|
<pawnKind>ArachnaeNode_Race_Myrmecocystus</pawnKind>
|
||||||
|
<delayTicks>300</delayTicks>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<pawnKind>ArachnaeNode_Race_ShieldHead</pawnKind>
|
||||||
|
<delayTicks>300</delayTicks>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<pawnKind>ArachnaeNode_Race_WeaponSmith</pawnKind>
|
||||||
|
<delayTicks>300</delayTicks>
|
||||||
|
</li>
|
||||||
|
</spawnablePawns>
|
||||||
|
<whitelist>
|
||||||
|
<li>ARA_ArachnaeQueen</li>
|
||||||
|
</whitelist>
|
||||||
|
<destroyOnSpawn>true</destroyOnSpawn>
|
||||||
|
</li>
|
||||||
|
<li Class="ArachnaeSwarm.CompProperties_TemperatureRuinableDamage">
|
||||||
|
<minSafeTemperature>-300</minSafeTemperature>
|
||||||
|
<maxSafeTemperature>100</maxSafeTemperature>
|
||||||
|
<progressPerDegreePerTick>0.00005</progressPerDegreePerTick>
|
||||||
|
<damagePerTick>0.005</damagePerTick>
|
||||||
|
<recoveryRate>0.001</recoveryRate>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
|
</Defs>
|
||||||
|
|||||||
@@ -5,11 +5,20 @@ using Verse.AI.Group;
|
|||||||
|
|
||||||
namespace ArachnaeSwarm
|
namespace ArachnaeSwarm
|
||||||
{
|
{
|
||||||
|
// 新的统一入口类
|
||||||
|
public class PawnSpawnEntry
|
||||||
|
{
|
||||||
|
public PawnKindDef pawnKind;
|
||||||
|
public int delayTicks = 0; // 默认延迟为0
|
||||||
|
public ResearchProjectDef requiredResearch; // 可选的科技需求
|
||||||
|
}
|
||||||
|
|
||||||
public class CompProperties_SpawnPawnFromList : CompProperties
|
public class CompProperties_SpawnPawnFromList : CompProperties
|
||||||
{
|
{
|
||||||
public List<PawnKindDef> pawnKinds;
|
// 合并后的新列表
|
||||||
|
public List<PawnSpawnEntry> spawnablePawns;
|
||||||
|
|
||||||
public List<PawnKindDef> whitelist;
|
public List<PawnKindDef> whitelist;
|
||||||
public List<PawnKindDelay> pawnKindDelays;
|
|
||||||
public bool destroyOnSpawn = false;
|
public bool destroyOnSpawn = false;
|
||||||
public IntRange spawnCount = new IntRange(1, 1);
|
public IntRange spawnCount = new IntRange(1, 1);
|
||||||
public Type lordJob;
|
public Type lordJob;
|
||||||
@@ -32,10 +41,4 @@ namespace ArachnaeSwarm
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
public class PawnKindDelay
|
|
||||||
{
|
|
||||||
public PawnKindDef pawnKind;
|
|
||||||
public int delay;
|
|
||||||
}
|
}
|
||||||
@@ -13,14 +13,14 @@ namespace ArachnaeSwarm
|
|||||||
|
|
||||||
private int spawnUntilTick = -1;
|
private int spawnUntilTick = -1;
|
||||||
private PawnKindDef spawningPawnKind;
|
private PawnKindDef spawningPawnKind;
|
||||||
private PawnKindDef selectedPawnKind;
|
private PawnSpawnEntry selectedEntry;
|
||||||
public bool IsHatching => spawnUntilTick > 0;
|
public bool IsHatching => spawnUntilTick > 0;
|
||||||
|
|
||||||
public override IEnumerable<FloatMenuOption> CompFloatMenuOptions(Pawn selPawn)
|
public override IEnumerable<FloatMenuOption> CompFloatMenuOptions(Pawn selPawn)
|
||||||
{
|
{
|
||||||
if (spawnUntilTick > 0)
|
if (spawnUntilTick > 0)
|
||||||
{
|
{
|
||||||
yield break; // 正在延迟中,不显示菜单
|
yield break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Props.whitelist == null || !Props.whitelist.Contains(selPawn.kindDef))
|
if (Props.whitelist == null || !Props.whitelist.Contains(selPawn.kindDef))
|
||||||
@@ -28,16 +28,29 @@ namespace ArachnaeSwarm
|
|||||||
yield break;
|
yield break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Props.pawnKinds != null)
|
if (Props.spawnablePawns != null)
|
||||||
{
|
{
|
||||||
foreach (PawnKindDef pawnKind in Props.pawnKinds)
|
foreach (PawnSpawnEntry entry in Props.spawnablePawns)
|
||||||
{
|
{
|
||||||
yield return new FloatMenuOption("ARA_Incubate".Translate(pawnKind.label), () =>
|
if (entry.pawnKind == null) continue;
|
||||||
|
|
||||||
|
// 检查科技需求
|
||||||
|
if (entry.requiredResearch != null && !entry.requiredResearch.IsFinished)
|
||||||
{
|
{
|
||||||
Job job = JobMaker.MakeJob(DefDatabase<JobDef>.GetNamed("ARA_IncubateJob"), parent);
|
// 科技未完成,显示灰色不可点击选项
|
||||||
selectedPawnKind = pawnKind;
|
string disabledText = "ARA_Incubate".Translate(entry.pawnKind.label) + " (" + "Requires".Translate() + ": " + entry.requiredResearch.label + ")";
|
||||||
selPawn.jobs.TryTakeOrderedJob(job);
|
yield return new FloatMenuOption(disabledText, null);
|
||||||
});
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// 科技已完成或无需求,显示正常选项
|
||||||
|
yield return new FloatMenuOption("ARA_Incubate".Translate(entry.pawnKind.label), () =>
|
||||||
|
{
|
||||||
|
Job job = JobMaker.MakeJob(DefDatabase<JobDef>.GetNamed("ARA_IncubateJob"), parent);
|
||||||
|
this.selectedEntry = entry; // 保存整个入口信息
|
||||||
|
selPawn.jobs.TryTakeOrderedJob(job);
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -45,9 +58,10 @@ namespace ArachnaeSwarm
|
|||||||
|
|
||||||
public void StartIncubation()
|
public void StartIncubation()
|
||||||
{
|
{
|
||||||
spawningPawnKind = selectedPawnKind;
|
if (this.selectedEntry == null) return;
|
||||||
int delay = Props.pawnKindDelays?.FirstOrDefault(pkd => pkd.pawnKind == selectedPawnKind)?.delay ?? 0;
|
|
||||||
spawnUntilTick = Find.TickManager.TicksGame + delay;
|
spawningPawnKind = this.selectedEntry.pawnKind;
|
||||||
|
spawnUntilTick = Find.TickManager.TicksGame + this.selectedEntry.delayTicks;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void CompTick()
|
public override void CompTick()
|
||||||
@@ -147,7 +161,7 @@ namespace ArachnaeSwarm
|
|||||||
base.PostExposeData();
|
base.PostExposeData();
|
||||||
Scribe_Values.Look(ref spawnUntilTick, "spawnUntilTick", -1);
|
Scribe_Values.Look(ref spawnUntilTick, "spawnUntilTick", -1);
|
||||||
Scribe_Defs.Look(ref spawningPawnKind, "spawningPawnKind");
|
Scribe_Defs.Look(ref spawningPawnKind, "spawningPawnKind");
|
||||||
Scribe_Defs.Look(ref selectedPawnKind, "selectedPawnKind");
|
// selectedEntry is transient and does not need to be saved.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user