This commit is contained in:
2025-10-30 11:43:20 +08:00
parent a3fb539bbe
commit f969798670
22 changed files with 1067 additions and 476 deletions

View File

@@ -3,23 +3,24 @@
<ThingDef ParentName="BuildingBase">
<defName>ARA_HiveCorvette_Building</defName>
<label>天巫种兽虫</label>
<description>天巫种兽虫</description>
<thingClass>Building_PassengerShuttle</thingClass>
<description>天巫种兽虫是阿拉克涅虫群舰队中的对地攻击机,它们长长的触须和强大的灵能悬浮能力使得它们可以在引航种的指挥下高速掠过战场,并依据指令打击不长眼的敌军集群或援助虫群的进攻。\n\n它们需要起飞才能发挥效果</description>
<thingClass>Building</thingClass>
<preventDroppingThingsOn>true</preventDroppingThingsOn>
<altitudeLayer>Building</altitudeLayer>
<pathCost>50</pathCost>
<blockWind>true</blockWind>
<passability>PassThroughOnly</passability>
<fillPercent>0.5</fillPercent>
<size>(5,5)</size>
<fillPercent>1</fillPercent>
<size>(6,14)</size>
<drawHighlight>true</drawHighlight>
<highlightColor>(0.56, 0.62, 0.9)</highlightColor>
<uiIconScale>1</uiIconScale>
<uiIconPath>ArachnaeSwarm/Building/ARA_HiveCorvetteB_Leaving</uiIconPath>
<graphicData>
<texPath>ArachnaeSwarm/FlyOverThing/ARA_HiveCorvette_Shadow</texPath>
<texPath>ArachnaeSwarm/Building/ARA_HiveCorvetteB</texPath>
<graphicClass>Graphic_Single</graphicClass>
<shaderType>TransparentPostLight</shaderType>
<drawSize>(5,5)</drawSize>
<drawSize>(5,16)</drawSize>
<color>(195,195,195,255)</color>
</graphicData>
<statBases>
@@ -33,10 +34,10 @@
<designationCategory>ARA_Buildings</designationCategory>
<constructionSkillPrerequisite>6</constructionSkillPrerequisite>
<costList>
<Steel>250</Steel>
<Plasteel>150</Plasteel>
<ComponentIndustrial>6</ComponentIndustrial>
<ShuttleEngine>1</ShuttleEngine>
<ARA_Carapace>500</ARA_Carapace>
<Plasteel>250</Plasteel>
<ARA_Activated_Bacterium>100</ARA_Activated_Bacterium>
<ARA_Gene_Essence>100</ARA_Gene_Essence>
</costList>
<canOverlapZones>true</canOverlapZones>
<killedLeavings>
@@ -51,6 +52,9 @@
<drawerType>RealtimeOnly</drawerType>
<repairEffect>ConstructMetal</repairEffect>
<forceDebugSpawnable>true</forceDebugSpawnable>
<researchPrerequisites>
<li>ARA_Technology_4COV</li>
</researchPrerequisites>
<building>
<destroySound>BuildingDestroyed_Metal_Big</destroySound>
<paintable>true</paintable>
@@ -60,7 +64,7 @@
<li Class="ArachnaeSwarm.CompProperties_AircraftHangar">
<aircraftDef>ARA_HiveCorvette_Entity</aircraftDef>
<aircraftCount>1</aircraftCount>
<skyfallerLeaving>PassengerShuttleLeaving</skyfallerLeaving>
<skyfallerLeaving>ARA_HiveCorvette_Leaving</skyfallerLeaving>
</li>
</comps>
<placeWorkers>
@@ -72,6 +76,54 @@
<defName>ARA_HiveCorvette_Entity</defName>
<label>天巫种兽虫</label>
<description>什么这是个记录数量用的thingdef你不应该在任何场合下看到这个。</description>
<thingClass>Thing</thingClass>
</ThingDef>
<ThingDef ParentName="SkyfallerBase" Name="DropPodLeaving">
<defName>ARA_HiveCorvette_Leaving</defName>
<label>天巫种兽虫 (起飞中)</label>
<thingClass>FlyShipLeaving</thingClass>
<skyfaller>
<reversed>true</reversed>
<anticipationSound>Shuttle_Leaving</anticipationSound>
<anticipationSoundTicks>-10</anticipationSoundTicks>
<ticksToImpactRange>-40~-15</ticksToImpactRange>
<moteSpawnTime>0.05</moteSpawnTime>
<shadow>Things/Skyfaller/SkyfallerShadowRectangle</shadow>
<shadowSize>(5.5,3.5)</shadowSize>
<motesPerCell>1</motesPerCell>
<angleCurve>
<points>
<li>(0,90)</li>
<li>(1,110)</li>
</points>
</angleCurve>
<rotationCurve>
<points>
<li>(0,0)</li>
<li>(0,10)</li>
</points>
</rotationCurve>
<zPositionCurve>
<points>
<li>(0,0)</li>
<li>(0.08,2)</li>
</points>
</zPositionCurve>
<speedCurve>
<points>
<li>(0,0.2)</li>
<li>(0.4,0.7)</li>
</points>
</speedCurve>
</skyfaller>
<graphicData>
<texPath>ArachnaeSwarm/Building/ARA_HiveCorvetteB_Leaving</texPath>
<graphicClass>Graphic_Single</graphicClass>
<shaderType>TransparentPostLight</shaderType>
<drawSize>(16,5)</drawSize>
<color>(195,195,195,255)</color>
</graphicData>
<altitudeLayer>MetaOverlays</altitudeLayer>
</ThingDef>
<ThingDef Parent="EtherealThingBase">
@@ -209,7 +261,7 @@
<!-- 生成配置 -->
<spawnIntervalTicks>250</spawnIntervalTicks> <!-- 5秒 -->
<maxEscorts>60</maxEscorts>
<maxEscorts>30</maxEscorts>
<spawnCount>1</spawnCount>
<!-- 位置配置 -->
@@ -217,6 +269,136 @@
<lateralOffset>100</lateralOffset>
<verticalOffset>5</verticalOffset>
<useRandomOffset>true</useRandomOffset>
<minSafeDistanceBetweenEscorts>10</minSafeDistanceBetweenEscorts> <!-- 伴飞物之间的距离 -->
<minSafeDistanceFromMain>70</minSafeDistanceFromMain> <!-- 与主飞行物的距离检查 -->
<!-- 飞行配置 -->
<escortSpeedMultiplier>20</escortSpeedMultiplier> <!-- 比主舰稍快 -->
<escortAltitudeOffset>10</escortAltitudeOffset> <!-- 比主舰稍高 -->
<mirrorMovement>false</mirrorMovement>
<!-- 行为配置 -->
<spawnOnStart>true</spawnOnStart>
<destroyWithParent>false</destroyWithParent>
<continuousSpawning>true</continuousSpawning>
<!-- 外观配置 -->
<useParentRotation>true</useParentRotation>
<!-- 缩放区间配置 -->
<escortScaleRange>
<min>0.3</min>
<max>1.2</max>
</escortScaleRange>
<!-- 高度遮罩配置 -->
<useHeightMask>true</useHeightMask>
<heightMaskAlphaRange>
<min>0.2</min>
<max>0.6</max>
</heightMaskAlphaRange>
<heightMaskColor>(0.7,0.85,1.0,1.0)</heightMaskColor>
<heightMaskScaleMultiplier>1.3</heightMaskScaleMultiplier>
</li>
<!-- 伴飞 -->
<li Class="ArachnaeSwarm.CompProperties_FlyOverEscort">
<escortFlyOverDef>ARA_HiveShip_Fake</escortFlyOverDef>
<!-- 生成配置 -->
<spawnIntervalTicks>3000</spawnIntervalTicks> <!-- 5秒 -->
<maxEscorts>3</maxEscorts>
<spawnCount>1</spawnCount>
<!-- 位置配置 -->
<spawnDistance>20</spawnDistance>
<lateralOffset>380</lateralOffset>
<verticalOffset>5</verticalOffset>
<useRandomOffset>true</useRandomOffset>
<minSafeDistanceBetweenEscorts>25</minSafeDistanceBetweenEscorts> <!-- 伴飞物之间的距离 -->
<minSafeDistanceFromMain>100</minSafeDistanceFromMain> <!-- 与主飞行物的距离检查 -->
<!-- 飞行配置 -->
<escortSpeedMultiplier>1</escortSpeedMultiplier> <!-- 比主舰稍快 -->
<escortAltitudeOffset>10</escortAltitudeOffset> <!-- 比主舰稍高 -->
<mirrorMovement>false</mirrorMovement>
<!-- 行为配置 -->
<spawnOnStart>true</spawnOnStart>
<destroyWithParent>true</destroyWithParent>
<continuousSpawning>true</continuousSpawning>
<!-- 外观配置 -->
<useParentRotation>true</useParentRotation>
<!-- 缩放区间配置 -->
<escortScaleRange>
<min>0.3</min>
<max>0.5</max>
</escortScaleRange>
<!-- 高度遮罩配置 -->
<useHeightMask>true</useHeightMask>
<heightMaskAlphaRange>
<min>0.3</min>
<max>0.6</max>
</heightMaskAlphaRange>
<heightMaskColor>(0.7,0.85,1.0,1.0)</heightMaskColor>
<heightMaskScaleMultiplier>1.3</heightMaskScaleMultiplier>
</li>
</comps>
</ThingDef>
<ThingDef Parent="EtherealThingBase">
<defName>ARA_HiveShip_Fake</defName>
<label>虫巢母舰</label>
<thingClass>ArachnaeSwarm.FlyOver</thingClass>
<tickerType>Normal</tickerType>
<drawerType>RealtimeOnly</drawerType>
<graphicData>
<!-- <texPath>ArachnaeSwarm/Weapon/ARA_Weapon_Empty</texPath> -->
<texPath>ArachnaeSwarm/FlyOverThing/ARA_HiveShip_Shadow</texPath>
<graphicClass>Graphic_Single</graphicClass>
<shaderType>TransparentPostLight</shaderType>
<drawSize>(100,250)</drawSize>
<color>(195,195,195,45)</color>
</graphicData>
<skyfaller>
<shadow>ArachnaeSwarm/Weapon/ARA_Weapon_Empty</shadow>
<shadowSize>(0, 0)</shadowSize>
<motesPerCell>0</motesPerCell>
<floatingSound>FlyOver/Flying</floatingSound>
<impactSound>FlyOver/Landing</impactSound>
</skyfaller>
<modExtensions>
<li Class="ArachnaeSwarm.FlyOverShadowExtension">
<customShadowPath>ArachnaeSwarm/Weapon/ARA_Weapon_Empty</customShadowPath>
<useCustomShadow>true</useCustomShadow>
<shadowIntensity>0.8</shadowIntensity>
<minShadowAlpha>0</minShadowAlpha>
<maxShadowAlpha>0</maxShadowAlpha>
<minShadowScale>0</minShadowScale>
<maxShadowScale>0</maxShadowScale>
</li>
</modExtensions>
<seeThroughFog>true</seeThroughFog>
<useHitPoints>false</useHitPoints>
<selectable>false</selectable>
<alwaysHaulable>false</alwaysHaulable>
<altitudeLayer>MetaOverlays</altitudeLayer>
<comps>
<!-- 伴飞 -->
<li Class="ArachnaeSwarm.CompProperties_FlyOverEscort">
<escortFlyOverDef>ARA_HiveCorvette_Fake</escortFlyOverDef>
<!-- 生成配置 -->
<spawnIntervalTicks>250</spawnIntervalTicks> <!-- 5秒 -->
<maxEscorts>5</maxEscorts>
<spawnCount>1</spawnCount>
<!-- 位置配置 -->
<spawnDistance>0</spawnDistance>
<lateralOffset>50</lateralOffset>
<verticalOffset>5</verticalOffset>
<useRandomOffset>true</useRandomOffset>
<!-- 飞行配置 -->
<escortSpeedMultiplier>20</escortSpeedMultiplier> <!-- 比主舰稍快 -->
@@ -247,10 +429,10 @@
<heightMaskScaleMultiplier>1.3</heightMaskScaleMultiplier>
</li>
</comps>
</ThingDef>
</ThingDef>
<ThingDef Parent="EtherealThingBase">
<defName>ARA_HiveCorvette_Fake</defName>
<label>种兽虫</label>
<label>种兽虫</label>
<thingClass>ArachnaeSwarm.FlyOver</thingClass>
<tickerType>Normal</tickerType>
<drawerType>RealtimeOnly</drawerType>
@@ -298,7 +480,7 @@
<drawerType>RealtimeOnly</drawerType>
<graphicData>
<!-- <texPath>ArachnaeSwarm/Weapon/ARA_Weapon_Empty</texPath> -->
<texPath>ArachnaeSwarm/FlyOverThing/ARA_HiveCorvette_Shadow</texPath>
<texPath>ArachnaeSwarm/FlyOverThing/ARA_HiveCorvetteB_Shadow</texPath>
<graphicClass>Graphic_Single</graphicClass>
<shaderType>TransparentPostLight</shaderType>
<drawSize>(20,30)</drawSize>
@@ -352,7 +534,7 @@
<drawerType>RealtimeOnly</drawerType>
<graphicData>
<!-- <texPath>ArachnaeSwarm/Weapon/ARA_Weapon_Empty</texPath> -->
<texPath>ArachnaeSwarm/FlyOverThing/ARA_HiveCorvette_Shadow</texPath>
<texPath>ArachnaeSwarm/FlyOverThing/ARA_HiveCorvetteB_Shadow</texPath>
<graphicClass>Graphic_Single</graphicClass>
<shaderType>TransparentPostLight</shaderType>
<drawSize>(20,30)</drawSize>
@@ -398,6 +580,56 @@
</li>
</comps>
</ThingDef>
<ThingDef Parent="EtherealThingBase">
<defName>ARA_HiveCorvette_Strike</defName>
<label>天巫种兽虫(棘刺扫射)</label>
<thingClass>ArachnaeSwarm.FlyOver</thingClass>
<tickerType>Normal</tickerType>
<drawerType>RealtimeOnly</drawerType>
<graphicData>
<!-- <texPath>ArachnaeSwarm/Weapon/ARA_Weapon_Empty</texPath> -->
<texPath>ArachnaeSwarm/FlyOverThing/ARA_HiveCorvetteB_Shadow</texPath>
<graphicClass>Graphic_Single</graphicClass>
<shaderType>TransparentPostLight</shaderType>
<drawSize>(20,30)</drawSize>
<color>(195,195,195,45)</color>
</graphicData>
<castEdgeShadows>false</castEdgeShadows>
<staticSunShadowHeight>0</staticSunShadowHeight>
<skyfaller>
<shadow>ArachnaeSwarm/Weapon/ARA_Weapon_Empty</shadow>
<shadowSize>(0, 0)</shadowSize>
<motesPerCell>0</motesPerCell>
<floatingSound>FlyOver/Flying</floatingSound>
<impactSound>FlyOver/Landing</impactSound>
</skyfaller>
<modExtensions>
<li Class="ArachnaeSwarm.FlyOverShadowExtension">
<customShadowPath>ArachnaeSwarm/Weapon/ARA_Weapon_Empty</customShadowPath>
<useCustomShadow>true</useCustomShadow>
<shadowIntensity>0.8</shadowIntensity>
<minShadowAlpha>0</minShadowAlpha>
<maxShadowAlpha>0</maxShadowAlpha>
<minShadowScale>0</minShadowScale>
<maxShadowScale>0</maxShadowScale>
</li>
</modExtensions>
<seeThroughFog>true</seeThroughFog>
<useHitPoints>false</useHitPoints>
<selectable>false</selectable>
<alwaysHaulable>false</alwaysHaulable>
<altitudeLayer>MetaOverlays</altitudeLayer>
<comps>
<li Class="ArachnaeSwarm.CompProperties_SectorSurveillance">
<projectileDef>Bullet_ARA_HiveCorvette</projectileDef>
<sectorAngle>30</sectorAngle> <!-- 扇形角度 -->
<sectorRange>50</sectorRange> <!-- 射程 -->
<shotCount>10</shotCount> <!-- 发射次数 -->
<shotInterval>0.5</shotInterval> <!-- 发射间隔 -->
<maxProjectiles>-1</maxProjectiles><!-- 最大射弹数量限制-->
</li>
</comps>
</ThingDef>
<ThingDef ParentName="SkyfallerBase">
<defName>ARA_HiveShip_Fire_Incoming</defName>
@@ -416,7 +648,7 @@
<shadowSize>(2.5, 2.5)</shadowSize>
<explosionRadius>10</explosionRadius>
<explosionDamage>ARA_AcidBurn</explosionDamage>
<explosionDamageFactor>0.5</explosionDamageFactor>
<explosionDamageFactor>0.1</explosionDamageFactor>
<cameraShake>1</cameraShake>
<angleCurve>
<points>