This commit is contained in:
Tourswen
2025-12-19 03:08:16 +08:00
parent ad42832aa7
commit 6d7ac8f054
45 changed files with 2187 additions and 1403 deletions

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<TrainableDef>
<defName>ARA_Cleaning</defName>
<label>清洁</label>
<description>允许该生物执行清洁任务。</description>
<!-- 标记为特殊训练,这样它就会被 PawnColumnWorker_Trainable_Special 统一管理 -->
<specialTrainable>true</specialTrainable>
<!-- 训练难度和所需智力 -->
<difficulty>5</difficulty>
<requiredTrainability>Advanced</requiredTrainability>
<!-- 训练所需步骤 -->
<steps>3</steps>
<!-- 在UI中的排序 -->
<listPriority>100</listPriority>
</TrainableDef>
<TrainableDef>
<defName>ARA_Sowing</defName>
<label>种植</label>
<description>允许该生物执行种植任务。</description>
<!-- 标记为特殊训练,这样它就会被 PawnColumnWorker_Trainable_Special 统一管理 -->
<specialTrainable>true</specialTrainable>
<!-- 训练难度和所需智力 -->
<difficulty>5</difficulty>
<requiredTrainability>Advanced</requiredTrainability>
<!-- 训练所需步骤 -->
<steps>3</steps>
<!-- 在UI中的排序 -->
<listPriority>100</listPriority>
</TrainableDef>
<TrainableDef>
<defName>ARA_Slayer_Ability1_Train</defName>
<label>暴屠冲撞</label>
<description>以庞大的身躯冲撞目标,对路径上的一切造成伤害。在冲击中途经的距离越远,伤害越高。</description>
<listPriority>0</listPriority>
<difficulty>200</difficulty>
<steps>1</steps>
<specialTrainable>true</specialTrainable>
<enablesAbility>ARA_Ability_SlayerCharge</enablesAbility>
</TrainableDef>
<AbilityDef>
<defName>ARA_Ability_SlayerCharge</defName>
<label>暴屠冲撞</label>
<description>以庞大的身躯冲撞目标,对路径上的一切造成伤害。在冲击中途经的距离越远,伤害越高。</description>
<iconPath>ArachnaeSwarm/UI/Abilities/ARA_Ability_TrackingCharge</iconPath> <!-- Placeholder Icon -->
<cooldownTicksRange>600</cooldownTicksRange>
<aiCanUse>true</aiCanUse>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<verbProperties>
<verbClass>ArachnaeSwarm.Verb_CastAbilityTrackingCharge</verbClass>
<label>追踪冲撞</label>
<requireLineOfSight>false</requireLineOfSight>
<targetParams>
<canTargetPawns>true</canTargetPawns>
<canTargetBuildings>true</canTargetBuildings>
<canTargetAnimals>true</canTargetAnimals>
<canTargetMechs>true</canTargetMechs>
<canTargetSelf>false</canTargetSelf>
</targetParams>
<range>18</range>
<warmupTime>1.5</warmupTime>
</verbProperties>
<comps>
<li Class="CompProperties_AbilityRequiresTrainable">
<trainableDef>ARA_Slayer_Ability1_Train</trainableDef>
<aiCanCastWithoutTrainable>true</aiCanCastWithoutTrainable>
</li>
<li Class="ArachnaeSwarm.CompProperties_TrackingCharge">
<homingSpeed>1.5</homingSpeed>
<initialDamage>100</initialDamage>
<damagePerTile>3</damagePerTile>
<inertiaDistance>25</inertiaDistance>
<collisionDamageDef>Blunt</collisionDamageDef>
<flyerDef>ARA_Flyer_TrackingCharge</flyerDef>
<collisionRadius>3.5</collisionRadius> <!-- Larger collision radius -->
<impactSound>Pawn_Melee_BigBash_HitPawn</impactSound>
<damageHostileOnly>true</damageHostileOnly> <!-- Set to false to damage everyone in the path -->
</li>
<li Class="CompProperties_AbilityEffecterOnCaster">
<effecterDef>WarTrumpet</effecterDef>
<maintainTicks>20</maintainTicks> <!-- Long enough for the "2nd wave" to spawn -->
</li>
</comps>
</AbilityDef>
</Defs>