到底有多强
@@ -2,19 +2,30 @@
|
|||||||
<Defs>
|
<Defs>
|
||||||
<!-- 有一个verb的cs引用了这个,勿删 -->
|
<!-- 有一个verb的cs引用了这个,勿删 -->
|
||||||
<ThingDef ParentName="MoteBase">
|
<ThingDef ParentName="MoteBase">
|
||||||
<defName>ExcaliburBeam</defName>
|
<defName>WULA_ExcaliburBeam</defName>
|
||||||
<thingClass>WulaFallenEmpire.Thing_ExcaliburBeam</thingClass>
|
<thingClass>WulaFallenEmpire.Thing_ExcaliburBeam</thingClass>
|
||||||
<label>Excalibur Beam</label>
|
<label>Excalibur Beam</label>
|
||||||
<altitudeLayer>MoteOverhead</altitudeLayer>
|
<altitudeLayer>MoteOverhead</altitudeLayer>
|
||||||
<graphicData>
|
<graphicData>
|
||||||
<texPath>Things/Mote/PowerBeam</texPath>
|
<texPath>Things/Mote/GraserBeam</texPath>
|
||||||
<shaderType>MoteGlow</shaderType>
|
<graphicClass>Graphic_MoteWithAgeSecs</graphicClass>
|
||||||
|
<shaderType>MoteBeam</shaderType>
|
||||||
|
<drawSize>(25,1)</drawSize>
|
||||||
|
<color>(165, 44, 2, 255)</color>
|
||||||
|
<shaderParameters>
|
||||||
|
<_ScrollSpeedA>0</_ScrollSpeedA>
|
||||||
|
<_ScrollSpeedB>0</_ScrollSpeedB>
|
||||||
|
<_Intensity>2</_Intensity>
|
||||||
|
</shaderParameters>
|
||||||
</graphicData>
|
</graphicData>
|
||||||
<drawOffscreen>true</drawOffscreen>
|
<drawOffscreen>true</drawOffscreen>
|
||||||
<mote>
|
<mote>
|
||||||
<fadeInTime>0.5</fadeInTime>
|
<fadeInTime>0.5</fadeInTime>
|
||||||
<solidTime>9.3</solidTime>
|
<solidTime>9.3</solidTime>
|
||||||
<fadeOutTime>1.0</fadeOutTime>
|
<fadeOutTime>1.0</fadeOutTime>
|
||||||
|
<rotateTowardsTarget>True</rotateTowardsTarget>
|
||||||
|
<scaleToConnectTargets>True</scaleToConnectTargets>
|
||||||
|
<fadeOutUnmaintained>True</fadeOutUnmaintained>
|
||||||
</mote>
|
</mote>
|
||||||
</ThingDef>
|
</ThingDef>
|
||||||
|
|
||||||
|
|||||||
@@ -241,7 +241,7 @@
|
|||||||
|
|
||||||
<PawnKindDef Name="Wula_Mech_Mobile_Factory_PawnKind" ParentName="HeavyMechanoidKind">
|
<PawnKindDef Name="Wula_Mech_Mobile_Factory_PawnKind" ParentName="HeavyMechanoidKind">
|
||||||
<defName>Wula_Mech_Mobile_Factory</defName> <!-- 修改了defName以避免冲突 -->
|
<defName>Wula_Mech_Mobile_Factory</defName> <!-- 修改了defName以避免冲突 -->
|
||||||
<label>MFm-87"天秤"</label>
|
<label>MFm-2"陆行舰"</label>
|
||||||
<race>Wula_Mech_Mobile_Factory</race>
|
<race>Wula_Mech_Mobile_Factory</race>
|
||||||
<combatPower>1000</combatPower>
|
<combatPower>1000</combatPower>
|
||||||
<allowInMechClusters>false</allowInMechClusters>
|
<allowInMechClusters>false</allowInMechClusters>
|
||||||
@@ -262,7 +262,7 @@
|
|||||||
<maskPath>Wula/Things/WULA_Cat/AllegianceOverlays/None</maskPath>
|
<maskPath>Wula/Things/WULA_Cat/AllegianceOverlays/None</maskPath>
|
||||||
<shaderType>CutoutWithOverlay</shaderType>
|
<shaderType>CutoutWithOverlay</shaderType>
|
||||||
<graphicClass>Graphic_Multi</graphicClass>
|
<graphicClass>Graphic_Multi</graphicClass>
|
||||||
<drawSize>6</drawSize>
|
<drawSize>9</drawSize>
|
||||||
<shadowData>
|
<shadowData>
|
||||||
<volume>(1.4, 1.8, 1.4)</volume>
|
<volume>(1.4, 1.8, 1.4)</volume>
|
||||||
</shadowData>
|
</shadowData>
|
||||||
@@ -277,10 +277,85 @@
|
|||||||
</weaponTags>
|
</weaponTags>
|
||||||
|
|
||||||
<abilities>
|
<abilities>
|
||||||
<li>WULA_GiveSwitchHediff</li> <!-- 添加“停止生产”技能 -->
|
<li>Wula_Mech_Mobile_Factory_Produce</li>
|
||||||
<li>WULA_RemoveSwitchHediff</li> <!-- 保留“恢复生产”技能 -->
|
|
||||||
</abilities>
|
</abilities>
|
||||||
</PawnKindDef>
|
</PawnKindDef>
|
||||||
|
<PawnKindDef Name="WULA_Mech_Flyer_PawnKind" ParentName="BaseMechanoidKind">
|
||||||
|
<defName>WULA_Mech_Flyer</defName>
|
||||||
|
<label>CRm-51"兵蚁"</label>
|
||||||
|
<race>WULA_Mech_Flyer</race>
|
||||||
|
<combatPower>190</combatPower>
|
||||||
|
<allowInMechClusters>false</allowInMechClusters>
|
||||||
|
<flyingAnimationFramePathPrefix>Wula/Things/WULA_Mech_Flyer/Wula_Mech_Flyer_east_Flying_</flyingAnimationFramePathPrefix>
|
||||||
|
<flyingAnimationDrawSize>1</flyingAnimationDrawSize>
|
||||||
|
<flyingAnimationFrameCount>1</flyingAnimationFrameCount>
|
||||||
|
<flyingAnimationTicksPerFrame>2</flyingAnimationTicksPerFrame>
|
||||||
|
<flyingAnimationInheritColors>false</flyingAnimationInheritColors>
|
||||||
|
|
||||||
|
<forceDeathOnDowned>true</forceDeathOnDowned>
|
||||||
|
<forceNoDeathNotification>true</forceNoDeathNotification>
|
||||||
|
<lifeStages>
|
||||||
|
<li>
|
||||||
|
<bodyGraphicData>
|
||||||
|
<texPath>Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer</texPath>
|
||||||
|
<shaderType>CutoutWithOverlay</shaderType>
|
||||||
|
<graphicClass>Graphic_Multi</graphicClass>
|
||||||
|
<drawSize>1.5</drawSize>
|
||||||
|
<shadowData>
|
||||||
|
<volume>(0.4, 0.8, 0.4)</volume>
|
||||||
|
</shadowData>
|
||||||
|
</bodyGraphicData>
|
||||||
|
</li>
|
||||||
|
</lifeStages>
|
||||||
|
<techHediffsChance>1</techHediffsChance>
|
||||||
|
<techHediffsMoney>9999~9999</techHediffsMoney>
|
||||||
|
</PawnKindDef>
|
||||||
|
<AbilityDef>
|
||||||
|
<defName>Wula_Mech_Mobile_Factory_Produce</defName>
|
||||||
|
<label>生产战争机器</label>
|
||||||
|
<description>立刻生产10台CRm-51"兵蚁",快速组织一道近战阵线。</description>
|
||||||
|
<iconPath>Wula/UI/Abilities/Wula_Mech_Mobile_Factory_Produce</iconPath>
|
||||||
|
<cooldownTicksRange>5000</cooldownTicksRange>
|
||||||
|
<charges>5</charges>
|
||||||
|
<cooldownPerCharge>true</cooldownPerCharge>
|
||||||
|
<aiCanUse>true</aiCanUse>
|
||||||
|
<displayOrder>300</displayOrder>
|
||||||
|
<disableGizmoWhileUndrafted>true</disableGizmoWhileUndrafted>
|
||||||
|
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
|
||||||
|
<verbProperties>
|
||||||
|
<verbClass>Verb_CastAbility</verbClass>
|
||||||
|
<range>24</range>
|
||||||
|
<warmupTime>0</warmupTime>
|
||||||
|
<soundCast>WarqueenWarUrchinsSpawned</soundCast>
|
||||||
|
<violent>false</violent>
|
||||||
|
<targetable>false</targetable>
|
||||||
|
<targetParams>
|
||||||
|
<canTargetSelf>true</canTargetSelf>
|
||||||
|
</targetParams>
|
||||||
|
</verbProperties>
|
||||||
|
<comps>
|
||||||
|
<li Class="WulaFallenEmpire.CompProperties_AbilityLaunchMultiProjectile">
|
||||||
|
<projectileDef>Wula_Mech_Mobile_Factory_Produce_Proj</projectileDef>
|
||||||
|
<numProjectiles>10</numProjectiles>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</AbilityDef>
|
||||||
|
<ThingDef ParentName="BaseGrenadeProjectile">
|
||||||
|
<defName>Wula_Mech_Mobile_Factory_Produce_Proj</defName>
|
||||||
|
<label>CRm-51"兵蚁"</label>
|
||||||
|
<thingClass>Projectile_SpawnsPawnZeroAge</thingClass>
|
||||||
|
<graphicData>
|
||||||
|
<texPath>Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer_south</texPath>
|
||||||
|
<graphicClass>Graphic_Single</graphicClass>
|
||||||
|
</graphicData>
|
||||||
|
<projectile>
|
||||||
|
<speed>41</speed>
|
||||||
|
<spawnsPawnKind>WULA_Mech_Flyer</spawnsPawnKind>
|
||||||
|
<tryAdjacentFreeSpaces>true</tryAdjacentFreeSpaces>
|
||||||
|
<damageDef>Bullet</damageDef>
|
||||||
|
<damageAmountBase>1</damageAmountBase>
|
||||||
|
</projectile>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
<!-- 乌拉族反常网络 -->
|
<!-- 乌拉族反常网络 -->
|
||||||
<PawnKindDef Name="Wula_Broken_Personality_Pawn_Base" Abstract="True">
|
<PawnKindDef Name="Wula_Broken_Personality_Pawn_Base" Abstract="True">
|
||||||
|
|||||||
@@ -239,6 +239,17 @@
|
|||||||
<li>WULA_Synth_Productor_Technology</li>
|
<li>WULA_Synth_Productor_Technology</li>
|
||||||
</prerequisites>
|
</prerequisites>
|
||||||
</ResearchProjectDef>
|
</ResearchProjectDef>
|
||||||
|
<ResearchProjectDef ParentName="WULAtechBase">
|
||||||
|
<defName>WULA_Mech_Mobile_Factory_Technology</defName>
|
||||||
|
<researchViewX>9.00</researchViewX>
|
||||||
|
<researchViewY>5.60</researchViewY>
|
||||||
|
<label>陆行舰空投许可</label>
|
||||||
|
<description>允许殖民地申请空投MFm-2"陆行舰",乌拉帝国的大型战争机械,一座插满火炮和战地生产设施的移动堡垒。</description>
|
||||||
|
<baseCost>800</baseCost>
|
||||||
|
<prerequisites>
|
||||||
|
<li>WULA_Colony_License_LV3_Technology</li>
|
||||||
|
</prerequisites>
|
||||||
|
</ResearchProjectDef>
|
||||||
<!-- 防御 -->
|
<!-- 防御 -->
|
||||||
<ResearchProjectDef ParentName="WULAtechBase">
|
<ResearchProjectDef ParentName="WULAtechBase">
|
||||||
<defName>WULA_Turret_Base_AT_Technology</defName>
|
<defName>WULA_Turret_Base_AT_Technology</defName>
|
||||||
@@ -383,8 +394,6 @@
|
|||||||
</prerequisites>
|
</prerequisites>
|
||||||
</ResearchProjectDef>
|
</ResearchProjectDef>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 衣服 -->
|
<!-- 衣服 -->
|
||||||
<ResearchProjectDef ParentName="WULAtechBase">
|
<ResearchProjectDef ParentName="WULAtechBase">
|
||||||
<defName>WULA_Synth_Clothes_1_Technology</defName>
|
<defName>WULA_Synth_Clothes_1_Technology</defName>
|
||||||
|
|||||||
@@ -80,6 +80,22 @@
|
|||||||
</li>
|
</li>
|
||||||
</subSounds>
|
</subSounds>
|
||||||
</SoundDef>
|
</SoundDef>
|
||||||
|
<SoundDef>
|
||||||
|
<defName>WULA_Unlimit_Penetrating_Beam_Shootingsound</defName>
|
||||||
|
<context>MapOnly</context>
|
||||||
|
<maxSimultaneous>1</maxSimultaneous>
|
||||||
|
<subSounds>
|
||||||
|
<li>
|
||||||
|
<grains>
|
||||||
|
<li Class="AudioGrain_Clip">
|
||||||
|
<clipPath>Wula/WULA_Unlimit_Penetrating_Beam_Shootingsound</clipPath>
|
||||||
|
</li>
|
||||||
|
</grains>
|
||||||
|
<volumeRange>65</volumeRange>
|
||||||
|
<pitchRange>0.9~1.1</pitchRange>
|
||||||
|
</li>
|
||||||
|
</subSounds>
|
||||||
|
</SoundDef>
|
||||||
<SoundDef>
|
<SoundDef>
|
||||||
<defName>WULA_RW_Beam_Shootingsound</defName>
|
<defName>WULA_RW_Beam_Shootingsound</defName>
|
||||||
<sustain>true</sustain>
|
<sustain>true</sustain>
|
||||||
|
|||||||
166
1.6/1.6/Defs/ThingDefs_Buildings/WULA_Mech_Buildings.xml
Normal file
@@ -0,0 +1,166 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
<!-- 陆行舰 -->
|
||||||
|
<ThingDef ParentName="BuildingBase">
|
||||||
|
<defName>Wula_Mech_Mobile_Factory_Cleanzone</defName>
|
||||||
|
<label>MFm-2"陆行舰"</label>
|
||||||
|
<description>清理出一块场地并准备好资源,使得乌拉帝国母舰可以向此处投放大型战争机械。建造好的信标可以收起或移至他处,但是必须要有母舰或者工程舰在上空才能投送大型战争机械。\n\n陆行舰是乌拉帝国的大型战争机械,简直就是一座移动堡垒——它不仅装甲厚实、火炮林立,还能在战场上生产大量的辅助战争机械以形成坚实的弹性阵线,生来就是为了粉碎坚固的堡垒和顽强的抵抗。</description>
|
||||||
|
<uiIconPath>Wula/Things/Wula_Mech_Mobile_Factory/Wula_Mech_Mobile_Factory_Incoming</uiIconPath>
|
||||||
|
<minifiedDef>MinifiedThing</minifiedDef>
|
||||||
|
<tickerType>Normal</tickerType>
|
||||||
|
<descriptionHyperlinks>
|
||||||
|
<ThingDef>Wula_Mech_Mobile_Factory</ThingDef>
|
||||||
|
<ThingDef>WULA_Mech_Flyer</ThingDef>
|
||||||
|
</descriptionHyperlinks>
|
||||||
|
<thingCategories Inherit="False">
|
||||||
|
<li>BuildingsMisc</li>
|
||||||
|
</thingCategories>
|
||||||
|
<graphicData>
|
||||||
|
<texPath>Wula/Building/WULA_Dropping_Building_Cleanzone</texPath>
|
||||||
|
<graphicClass>Graphic_Multi</graphicClass>
|
||||||
|
<drawSize>(3,3)</drawSize>
|
||||||
|
<damageData>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</damageData>
|
||||||
|
</graphicData>
|
||||||
|
<altitudeLayer>Building</altitudeLayer>
|
||||||
|
<passability>PassThroughOnly</passability>
|
||||||
|
<castEdgeShadows>false</castEdgeShadows>
|
||||||
|
<fillPercent>0.5</fillPercent>
|
||||||
|
<canOverlapZones>false</canOverlapZones>
|
||||||
|
<pathCost>0</pathCost>
|
||||||
|
<hasInteractionCell>false</hasInteractionCell>
|
||||||
|
<rotatable>false</rotatable>
|
||||||
|
<researchPrerequisites Inherit="False">
|
||||||
|
<li>WULA_Mech_Mobile_Factory_Technology</li>
|
||||||
|
</researchPrerequisites>
|
||||||
|
<statBases>
|
||||||
|
<MaxHitPoints>1</MaxHitPoints>
|
||||||
|
<WorkToBuild>1</WorkToBuild>
|
||||||
|
<Mass>1</Mass>
|
||||||
|
<Flammability>0</Flammability>
|
||||||
|
</statBases>
|
||||||
|
<size>(3,3)</size>
|
||||||
|
<constructionSkillPrerequisite>0</constructionSkillPrerequisite>
|
||||||
|
<resourcesFractionWhenDeconstructed>1</resourcesFractionWhenDeconstructed>
|
||||||
|
<costList>
|
||||||
|
<Steel>50</Steel>
|
||||||
|
<ComponentIndustrial>1</ComponentIndustrial>
|
||||||
|
</costList>
|
||||||
|
<building>
|
||||||
|
<destroySound>BuildingDestroyed_Metal_Small</destroySound>
|
||||||
|
</building>
|
||||||
|
<placeWorkers>
|
||||||
|
<li>WulaFallenEmpire.PlaceWorker_CustomRadius</li>
|
||||||
|
</placeWorkers>
|
||||||
|
<designationCategory>WULA_Buildings</designationCategory>
|
||||||
|
<comps>
|
||||||
|
<li Class="WulaFallenEmpire.CompProperties_SkyfallerCaller">
|
||||||
|
<skyfallerDef>Wula_Mech_Mobile_Factory_Incoming</skyfallerDef> <!-- 替换为您想要的Skyfaller类型 -->
|
||||||
|
<destroyBuilding>true</destroyBuilding>
|
||||||
|
<delayTicks>1</delayTicks>
|
||||||
|
<allowThinRoof>true</allowThinRoof>
|
||||||
|
<allowThickRoof>false</allowThickRoof>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</ThingDef>
|
||||||
|
<ThingDef ParentName="SkyfallerBase">
|
||||||
|
<defName>Wula_Mech_Mobile_Factory_Incoming</defName>
|
||||||
|
<label>MFm-2"陆行舰"(空投中)</label>
|
||||||
|
<size>(1,1)</size>
|
||||||
|
<thingClass>WulaFallenEmpire.Skyfaller_PawnSpawner</thingClass>
|
||||||
|
<graphicData>
|
||||||
|
<texPath>Wula/Things/Wula_Mech_Mobile_Factory/Wula_Mech_Mobile_Factory_Incoming</texPath>
|
||||||
|
<graphicClass>Graphic_Single</graphicClass>
|
||||||
|
<shaderType>CutoutFlying</shaderType>
|
||||||
|
<drawSize>(9,9)</drawSize>
|
||||||
|
</graphicData>
|
||||||
|
<skyfaller>
|
||||||
|
<movementType>Decelerate</movementType>
|
||||||
|
<shadow>Things/Skyfaller/SkyfallerShadowDropPod</shadow>
|
||||||
|
<shadowSize>(6, 6)</shadowSize>
|
||||||
|
<anticipationSound>DropPod_Fall</anticipationSound>
|
||||||
|
<anticipationSoundTicks>100</anticipationSoundTicks>
|
||||||
|
<impactSound>Explosion_Vaporize</impactSound>
|
||||||
|
<moteSpawnTime>0.05</moteSpawnTime>
|
||||||
|
<motesPerCell>1</motesPerCell>
|
||||||
|
<cameraShake>1</cameraShake>
|
||||||
|
<angleCurve>
|
||||||
|
<points>
|
||||||
|
<li>(0,0)</li>
|
||||||
|
<li>(1, 1)</li>
|
||||||
|
</points>
|
||||||
|
</angleCurve>
|
||||||
|
<!-- <spawnThing></spawnThing> -->
|
||||||
|
<explosionRadius>15</explosionRadius>
|
||||||
|
<explosionDamage>WULA_Mech_EMP_Drop</explosionDamage>
|
||||||
|
<explosionDamageFactor>0</explosionDamageFactor>
|
||||||
|
</skyfaller>
|
||||||
|
<comps>
|
||||||
|
<li Class="CompProperties_Effecter">
|
||||||
|
<effecterDef>Smoke_Joint</effecterDef>
|
||||||
|
</li>
|
||||||
|
<li Class="WulaFallenEmpire.CompProperties_SkyfallerPawnSpawner">
|
||||||
|
<pawnKind>Wula_Mech_Mobile_Factory</pawnKind>
|
||||||
|
<faction>PlayerColony</faction>
|
||||||
|
<spawnDrafted>false</spawnDrafted>
|
||||||
|
<spawnHostile>false</spawnHostile>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</ThingDef>
|
||||||
|
<DamageDef ParentName="StunBase">
|
||||||
|
<defName>WULA_Mech_EMP_Drop</defName>
|
||||||
|
<label>EMP</label>
|
||||||
|
<externalViolenceForMechanoids>true</externalViolenceForMechanoids>
|
||||||
|
<deathMessage>{0} has been EMPed to death.</deathMessage>
|
||||||
|
<harmsHealth>false</harmsHealth>
|
||||||
|
<impactSoundType>Electric</impactSoundType>
|
||||||
|
<defaultDamage>50</defaultDamage>
|
||||||
|
<explosionSnowMeltAmount>0</explosionSnowMeltAmount>
|
||||||
|
<!-- <explosionCellFleck>BlastEMP</explosionCellFleck> -->
|
||||||
|
<!-- <explosionColorEdge>(0.8, 0.8, 0.8, 0.8)</explosionColorEdge>
|
||||||
|
<explosionInteriorFleck>ElectricalSpark</explosionInteriorFleck> -->
|
||||||
|
<soundExplosion>Explosion_Vaporize</soundExplosion>
|
||||||
|
<combatLogRules>Damage_EMP</combatLogRules>
|
||||||
|
<causeStun>true</causeStun>
|
||||||
|
<stunResistStat MayRequireAnyOf="Ludeon.RimWorld.Biotech,Ludeon.RimWorld.Anomaly">EMPResistance</stunResistStat>
|
||||||
|
<stunAdaptationTicks>2200</stunAdaptationTicks>
|
||||||
|
<explosionCenterEffecter>WULA_Mech_EMP_Drop_Shockwave</explosionCenterEffecter>
|
||||||
|
</DamageDef>
|
||||||
|
<EffecterDef>
|
||||||
|
<defName>WULA_Mech_EMP_Drop_Shockwave</defName>
|
||||||
|
<children>
|
||||||
|
<li>
|
||||||
|
<subEffecterClass>SubEffecter_SprayerTriggered</subEffecterClass>
|
||||||
|
<fleckDef>Fleck_BlastMechBandShockwave</fleckDef>
|
||||||
|
<burstCount>1</burstCount>
|
||||||
|
<spawnLocType>OnSource</spawnLocType>
|
||||||
|
<absoluteAngle>true</absoluteAngle>
|
||||||
|
<rotation>0~0</rotation>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<subEffecterClass>SubEffecter_SprayerTriggered</subEffecterClass>
|
||||||
|
<fleckDef>Fleck_BlastMechBandRedLine</fleckDef>
|
||||||
|
<burstCount>1</burstCount>
|
||||||
|
<spawnLocType>OnSource</spawnLocType>
|
||||||
|
<absoluteAngle>true</absoluteAngle>
|
||||||
|
<rotation>0~0</rotation>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<subEffecterClass>SubEffecter_SprayerTriggered</subEffecterClass>
|
||||||
|
<fleckDef>FlashMechBand</fleckDef>
|
||||||
|
<burstCount>1</burstCount>
|
||||||
|
<spawnLocType>OnSource</spawnLocType>
|
||||||
|
<absoluteAngle>true</absoluteAngle>
|
||||||
|
<rotation>0~0</rotation>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<subEffecterClass>SubEffecter_SprayerTriggered</subEffecterClass>
|
||||||
|
<moteDef>Mote_RedFlashStrong</moteDef>
|
||||||
|
<burstCount>1</burstCount>
|
||||||
|
<spawnLocType>OnSource</spawnLocType>
|
||||||
|
<scale>24</scale>
|
||||||
|
</li>
|
||||||
|
</children>
|
||||||
|
</EffecterDef>
|
||||||
|
</Defs>
|
||||||
@@ -1188,6 +1188,42 @@
|
|||||||
</skyfaller>
|
</skyfaller>
|
||||||
</ThingDef>
|
</ThingDef>
|
||||||
<EffecterDef>
|
<EffecterDef>
|
||||||
|
<defName>WULA_DarkMatterBomb_Shockwave</defName>
|
||||||
|
<children>
|
||||||
|
<li>
|
||||||
|
<subEffecterClass>SubEffecter_SprayerTriggered</subEffecterClass>
|
||||||
|
<fleckDef>Fleck_BlastMechBandShockwave</fleckDef>
|
||||||
|
<burstCount>1</burstCount>
|
||||||
|
<spawnLocType>OnSource</spawnLocType>
|
||||||
|
<absoluteAngle>true</absoluteAngle>
|
||||||
|
<rotation>0~0</rotation>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<subEffecterClass>SubEffecter_SprayerTriggered</subEffecterClass>
|
||||||
|
<fleckDef>Fleck_BlastMechBandRedLine</fleckDef>
|
||||||
|
<burstCount>1</burstCount>
|
||||||
|
<spawnLocType>OnSource</spawnLocType>
|
||||||
|
<absoluteAngle>true</absoluteAngle>
|
||||||
|
<rotation>0~0</rotation>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<subEffecterClass>SubEffecter_SprayerTriggered</subEffecterClass>
|
||||||
|
<fleckDef>FlashMechBand</fleckDef>
|
||||||
|
<burstCount>1</burstCount>
|
||||||
|
<spawnLocType>OnSource</spawnLocType>
|
||||||
|
<absoluteAngle>true</absoluteAngle>
|
||||||
|
<rotation>0~0</rotation>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<subEffecterClass>SubEffecter_SprayerTriggered</subEffecterClass>
|
||||||
|
<moteDef>Mote_RedFlashStrong</moteDef>
|
||||||
|
<burstCount>1</burstCount>
|
||||||
|
<spawnLocType>OnSource</spawnLocType>
|
||||||
|
<scale>24</scale>
|
||||||
|
</li>
|
||||||
|
</children>
|
||||||
|
</EffecterDef>
|
||||||
|
<!-- <EffecterDef>
|
||||||
<defName>WULA_DarkMatterBomb_Shockwave</defName>
|
<defName>WULA_DarkMatterBomb_Shockwave</defName>
|
||||||
<children>
|
<children>
|
||||||
<li>
|
<li>
|
||||||
@@ -1214,8 +1250,8 @@
|
|||||||
<scale>24</scale>
|
<scale>24</scale>
|
||||||
</li>
|
</li>
|
||||||
</children>
|
</children>
|
||||||
</EffecterDef>
|
</EffecterDef> -->
|
||||||
<FleckDef ParentName="FleckBase_Thrown">
|
<!-- <FleckDef ParentName="FleckBase_Thrown">
|
||||||
<defName>WULA_DarkMatterBomb_MechBandRedLine_Fleck</defName>
|
<defName>WULA_DarkMatterBomb_MechBandRedLine_Fleck</defName>
|
||||||
<altitudeLayer>LightingOverlay</altitudeLayer>
|
<altitudeLayer>LightingOverlay</altitudeLayer>
|
||||||
<fadeInTime>0.1</fadeInTime>
|
<fadeInTime>0.1</fadeInTime>
|
||||||
@@ -1241,7 +1277,7 @@
|
|||||||
</shaderParameters>
|
</shaderParameters>
|
||||||
<drawSize>(7, 7)</drawSize>
|
<drawSize>(7, 7)</drawSize>
|
||||||
</graphicData>
|
</graphicData>
|
||||||
</FleckDef>
|
</FleckDef> -->
|
||||||
<ThingDef ParentName="MoteBase">
|
<ThingDef ParentName="MoteBase">
|
||||||
<defName>WULA_DarkMatterBomb_FlashStrong</defName>
|
<defName>WULA_DarkMatterBomb_FlashStrong</defName>
|
||||||
<thingClass>MoteAttached</thingClass>
|
<thingClass>MoteAttached</thingClass>
|
||||||
|
|||||||
@@ -2,16 +2,16 @@
|
|||||||
<Defs>
|
<Defs>
|
||||||
<ThingDef ParentName="BaseHumanMakeableGun">
|
<ThingDef ParentName="BaseHumanMakeableGun">
|
||||||
<defName>WULA_RW_Unlimit_Penetrating_Beam_Cannon</defName>
|
<defName>WULA_RW_Unlimit_Penetrating_Beam_Cannon</defName>
|
||||||
<label>XXx-00 "贯杀炮"</label>
|
<label>UPb-00 "贯杀炮"</label>
|
||||||
<description>乌拉帝国军械部在黄金时期所设计的武器,时至今日仍未被确认其实际代号。这种武器装填缓慢、体积巨大,只能由最庞大的战争平台所配备,所发射的切割束几乎可以横跨战场,并抹除路径上所有的敌人。</description>
|
<description>乌拉帝国军械部在黄金时期所设计的武器,装填缓慢、体积巨大,只能由最庞大的战争平台所配备,所发射的切割束几乎可以横跨战场,并抹除路径上所有的敌人。</description>
|
||||||
<techLevel>Archotech</techLevel>
|
<techLevel>Archotech</techLevel>
|
||||||
<tradeability>None</tradeability>
|
<tradeability>None</tradeability>
|
||||||
<graphicData>
|
<graphicData>
|
||||||
<texPath>Wula/Weapon/WULA_RW_Unlimit_Penetrating_Beam_Cannon</texPath>
|
<texPath>Wula/Weapon/WULA_RW_Unlimit_Penetrating_Beam_Cannon</texPath>
|
||||||
<graphicClass>Graphic_Single</graphicClass>
|
<graphicClass>Graphic_Single</graphicClass>
|
||||||
<drawSize>1.5</drawSize>
|
<drawSize>3</drawSize>
|
||||||
</graphicData>
|
</graphicData>
|
||||||
<uiIconScale>0.75</uiIconScale>
|
<uiIconScale>0.5</uiIconScale>
|
||||||
<soundInteract>Interact_Rifle</soundInteract>
|
<soundInteract>Interact_Rifle</soundInteract>
|
||||||
<statBases>
|
<statBases>
|
||||||
<Mass>200</Mass>
|
<Mass>200</Mass>
|
||||||
@@ -19,7 +19,7 @@
|
|||||||
<AccuracyShort>1</AccuracyShort>
|
<AccuracyShort>1</AccuracyShort>
|
||||||
<AccuracyMedium>1</AccuracyMedium>
|
<AccuracyMedium>1</AccuracyMedium>
|
||||||
<AccuracyLong>1</AccuracyLong>
|
<AccuracyLong>1</AccuracyLong>
|
||||||
<RangedWeapon_Cooldown>0</RangedWeapon_Cooldown>
|
<RangedWeapon_Cooldown>4</RangedWeapon_Cooldown>
|
||||||
</statBases>
|
</statBases>
|
||||||
<smeltable>false</smeltable>
|
<smeltable>false</smeltable>
|
||||||
<recipeMaker Inherit="False" IsNull="True" />
|
<recipeMaker Inherit="False" IsNull="True" />
|
||||||
@@ -33,29 +33,30 @@
|
|||||||
<li Class="WulaFallenEmpire.VerbProperties_Excalibur">
|
<li Class="WulaFallenEmpire.VerbProperties_Excalibur">
|
||||||
<verbClass>WulaFallenEmpire.Verb_Excalibur</verbClass>
|
<verbClass>WulaFallenEmpire.Verb_Excalibur</verbClass>
|
||||||
<hasStandardCommand>true</hasStandardCommand>
|
<hasStandardCommand>true</hasStandardCommand>
|
||||||
<range>30.9</range>
|
<range>500</range>
|
||||||
<warmupTime>6</warmupTime>
|
<warmupTime>5</warmupTime>
|
||||||
<burstShotCount>1</burstShotCount>
|
<burstShotCount>1</burstShotCount>
|
||||||
<ticksBetweenBurstShots>2</ticksBetweenBurstShots>
|
<ticksBetweenBurstShots>2</ticksBetweenBurstShots>
|
||||||
<soundCast>ChargeLance_Fire</soundCast>
|
<soundCast>WULA_Unlimit_Penetrating_Beam_Shootingsound</soundCast>
|
||||||
<soundCastTail>GunTail_Heavy</soundCastTail>
|
<soundCastTail>GunTail_Heavy</soundCastTail>
|
||||||
<requireLineOfSight>false</requireLineOfSight>
|
<requireLineOfSight>false</requireLineOfSight>
|
||||||
|
<aimingLineMote>Mote_HellsphereCannon_Aim</aimingLineMote>
|
||||||
|
<soundAiming>HellsphereCannon_Aiming</soundAiming>
|
||||||
<targetParams>
|
<targetParams>
|
||||||
<canTargetLocations>true</canTargetLocations>
|
<canTargetLocations>true</canTargetLocations>
|
||||||
</targetParams>
|
</targetParams>
|
||||||
<pathWidth>1</pathWidth>
|
<pathWidth>2</pathWidth>
|
||||||
<damageDef>Bomb</damageDef>
|
<damageDef>BombSuper</damageDef>
|
||||||
<damageAmount>450</damageAmount>
|
<damageAmount>450</damageAmount>
|
||||||
<armorPenetration>2</armorPenetration>
|
<armorPenetration>2</armorPenetration>
|
||||||
<beamDefName>ExcaliburBeam</beamDefName>
|
<beamDefName>WULA_ExcaliburBeam</beamDefName>
|
||||||
</li>
|
</li>
|
||||||
</verbs>
|
</verbs>
|
||||||
<weaponTags>
|
<weaponTags>
|
||||||
<li>Wula_Mech_Mobile_Factory_Main_Weapon</li>
|
<li>Wula_Mech_Mobile_Factory_Main_Weapon</li>
|
||||||
</weaponTags>
|
</weaponTags>
|
||||||
</ThingDef>
|
</ThingDef>
|
||||||
|
<ThingDef ParentName="BaseWeaponTurret">
|
||||||
<ThingDef Name="Wula_CR_Mobile_Factory_Turret" ParentName="BaseWeaponTurret">
|
|
||||||
<defName>Wula_CR_Mobile_Factory_Turret</defName>
|
<defName>Wula_CR_Mobile_Factory_Turret</defName>
|
||||||
<label>CRt-91"铱锇"</label>
|
<label>CRt-91"铱锇"</label>
|
||||||
<description>由乌拉帝国的陆行舰所配备的炮塔之一,能够喷射穿透装甲的热熔束,处理靠近陆行舰的威胁。</description>
|
<description>由乌拉帝国的陆行舰所配备的炮塔之一,能够喷射穿透装甲的热熔束,处理靠近陆行舰的威胁。</description>
|
||||||
@@ -127,120 +128,6 @@
|
|||||||
</li>
|
</li>
|
||||||
</verbs>
|
</verbs>
|
||||||
</ThingDef>
|
</ThingDef>
|
||||||
<ThingDef ParentName="Wula_CR_Mobile_Factory_Turret">
|
|
||||||
<defName>Wula_CR_Mobile_Factory_Turret_MKII</defName>
|
|
||||||
<label>CRt-92"铱锇MK2"</label>
|
|
||||||
<description>由乌拉帝国的陆行舰所配备的炮塔之一,此改进版比起其原型可以将热熔束喷到更远的地方,但是无法处理过近的目标。</description>
|
|
||||||
<verbs Inherit="False">
|
|
||||||
<li>
|
|
||||||
<verbClass>Verb_ArcSprayIncinerator</verbClass>
|
|
||||||
<hasStandardCommand>true</hasStandardCommand>
|
|
||||||
<range>26</range>
|
|
||||||
<beamFullWidthRange>15</beamFullWidthRange>
|
|
||||||
<defaultCooldownTime>6</defaultCooldownTime>
|
|
||||||
<burstShotCount>25</burstShotCount>
|
|
||||||
<showBurstShotStats>false</showBurstShotStats>
|
|
||||||
<requireLineOfSight>false</requireLineOfSight>
|
|
||||||
<beamWidth>6</beamWidth>
|
|
||||||
<ticksBetweenBurstShots>2</ticksBetweenBurstShots>
|
|
||||||
<beamDamageDef>Damage_WULA_Melta</beamDamageDef>
|
|
||||||
<soundCastTail>GunTail_Medium</soundCastTail>
|
|
||||||
<muzzleFlashScale>9</muzzleFlashScale>
|
|
||||||
<soundCastBeam>Flamethrower_Firing</soundCastBeam>
|
|
||||||
<beamGroundFleckDef>Fleck_IncineratorBeamBurn</beamGroundFleckDef>
|
|
||||||
<beamFleckChancePerTick>0.32</beamFleckChancePerTick>
|
|
||||||
<beamMaxDeviation>0.5</beamMaxDeviation>
|
|
||||||
<beamCurvature>0</beamCurvature>
|
|
||||||
<beamEndEffecterDef>IncineratorBeam_End</beamEndEffecterDef>
|
|
||||||
<beamChanceToStartFire>0.85</beamChanceToStartFire>
|
|
||||||
<beamFireSizeRange>0.55~0.85</beamFireSizeRange>
|
|
||||||
<beamStartOffset>.5</beamStartOffset>
|
|
||||||
<beamHitsNeighborCells>true</beamHitsNeighborCells>
|
|
||||||
<beamCantHitWithinMinRange>true</beamCantHitWithinMinRange>
|
|
||||||
<beamHitsNeighborCellsRequiresLOS>true</beamHitsNeighborCellsRequiresLOS>
|
|
||||||
<beamSetsGroundOnFire>true</beamSetsGroundOnFire>
|
|
||||||
<ai_BeamIsIncendiary>true</ai_BeamIsIncendiary>
|
|
||||||
<beamLineFleckDef>Fleck_IncineratorBeamSmoke</beamLineFleckDef>
|
|
||||||
<highlightColor>(58, 225, 225)</highlightColor>
|
|
||||||
<secondaryHighlightColor>(102, 200, 200)</secondaryHighlightColor>
|
|
||||||
<beamLineFleckChanceCurve>
|
|
||||||
<points>
|
|
||||||
<li>(0, 0)</li>
|
|
||||||
<li>(0.65, 0.02)</li>
|
|
||||||
<li>(1, .5)</li>
|
|
||||||
</points>
|
|
||||||
</beamLineFleckChanceCurve>
|
|
||||||
<targetParams>
|
|
||||||
<canTargetLocations>true</canTargetLocations>
|
|
||||||
</targetParams>
|
|
||||||
<flammabilityAttachFireChanceCurve>
|
|
||||||
<points>
|
|
||||||
<li>(0.6, 0)</li>
|
|
||||||
<li>(0.7, 0.2)</li>
|
|
||||||
<li>(1.2, 0.8)</li>
|
|
||||||
</points>
|
|
||||||
</flammabilityAttachFireChanceCurve>
|
|
||||||
<rangedFireRulepack>Combat_RangedFlamethrower</rangedFireRulepack>
|
|
||||||
</li>
|
|
||||||
</verbs>
|
|
||||||
</ThingDef>
|
|
||||||
<ThingDef ParentName="Wula_CR_Mobile_Factory_Turret">
|
|
||||||
<defName>WULA_MechFlyerTurretGun_Melta</defName>
|
|
||||||
<label>CRt-93"铱锇MK3"</label>
|
|
||||||
<description>由乌拉帝国的CRm-51"兵蚁"机械体所配备的武装,替换了常规的磁力光束,可以在近距离上灼烧敌军。</description>
|
|
||||||
<verbs Inherit="False">
|
|
||||||
<li>
|
|
||||||
<verbClass>Verb_ArcSprayIncinerator</verbClass>
|
|
||||||
<hasStandardCommand>true</hasStandardCommand>
|
|
||||||
<range>3</range>
|
|
||||||
<beamFullWidthRange>6</beamFullWidthRange>
|
|
||||||
<defaultCooldownTime>4</defaultCooldownTime>
|
|
||||||
<burstShotCount>25</burstShotCount>
|
|
||||||
<showBurstShotStats>false</showBurstShotStats>
|
|
||||||
<requireLineOfSight>false</requireLineOfSight>
|
|
||||||
<beamWidth>3</beamWidth>
|
|
||||||
<ticksBetweenBurstShots>2</ticksBetweenBurstShots>
|
|
||||||
<beamDamageDef>Damage_WULA_Melta_Small</beamDamageDef>
|
|
||||||
<soundCastTail>GunTail_Medium</soundCastTail>
|
|
||||||
<muzzleFlashScale>9</muzzleFlashScale>
|
|
||||||
<soundCastBeam>Flamethrower_Firing</soundCastBeam>
|
|
||||||
<beamGroundFleckDef>Fleck_IncineratorBeamBurn</beamGroundFleckDef>
|
|
||||||
<beamFleckChancePerTick>0.32</beamFleckChancePerTick>
|
|
||||||
<beamMaxDeviation>0.5</beamMaxDeviation>
|
|
||||||
<beamCurvature>0</beamCurvature>
|
|
||||||
<beamEndEffecterDef>IncineratorBeam_End</beamEndEffecterDef>
|
|
||||||
<beamChanceToStartFire>0.85</beamChanceToStartFire>
|
|
||||||
<beamFireSizeRange>0.55~0.85</beamFireSizeRange>
|
|
||||||
<beamStartOffset>.5</beamStartOffset>
|
|
||||||
<beamHitsNeighborCells>true</beamHitsNeighborCells>
|
|
||||||
<beamCantHitWithinMinRange>true</beamCantHitWithinMinRange>
|
|
||||||
<beamHitsNeighborCellsRequiresLOS>true</beamHitsNeighborCellsRequiresLOS>
|
|
||||||
<beamSetsGroundOnFire>true</beamSetsGroundOnFire>
|
|
||||||
<ai_BeamIsIncendiary>true</ai_BeamIsIncendiary>
|
|
||||||
<beamLineFleckDef>Fleck_IncineratorBeamSmoke</beamLineFleckDef>
|
|
||||||
<highlightColor>(58, 225, 225)</highlightColor>
|
|
||||||
<secondaryHighlightColor>(102, 200, 200)</secondaryHighlightColor>
|
|
||||||
<beamLineFleckChanceCurve>
|
|
||||||
<points>
|
|
||||||
<li>(0, 0)</li>
|
|
||||||
<li>(0.65, 0.02)</li>
|
|
||||||
<li>(1, .5)</li>
|
|
||||||
</points>
|
|
||||||
</beamLineFleckChanceCurve>
|
|
||||||
<targetParams>
|
|
||||||
<canTargetLocations>true</canTargetLocations>
|
|
||||||
</targetParams>
|
|
||||||
<flammabilityAttachFireChanceCurve>
|
|
||||||
<points>
|
|
||||||
<li>(0.6, 0)</li>
|
|
||||||
<li>(0.7, 0.2)</li>
|
|
||||||
<li>(1.2, 0.8)</li>
|
|
||||||
</points>
|
|
||||||
</flammabilityAttachFireChanceCurve>
|
|
||||||
<rangedFireRulepack>Combat_RangedFlamethrower</rangedFireRulepack>
|
|
||||||
</li>
|
|
||||||
</verbs>
|
|
||||||
</ThingDef>
|
|
||||||
<ThingDef ParentName="BaseWeaponTurret">
|
<ThingDef ParentName="BaseWeaponTurret">
|
||||||
<defName>Wula_MR_Mobile_Factory_Turret</defName>
|
<defName>Wula_MR_Mobile_Factory_Turret</defName>
|
||||||
<label>CRt-60"陨磷"</label>
|
<label>CRt-60"陨磷"</label>
|
||||||
@@ -334,13 +221,14 @@
|
|||||||
<hasStandardCommand>true</hasStandardCommand>
|
<hasStandardCommand>true</hasStandardCommand>
|
||||||
<defaultProjectile>Bullet_Wula_LR_Mobile_Factory_Turret</defaultProjectile>
|
<defaultProjectile>Bullet_Wula_LR_Mobile_Factory_Turret</defaultProjectile>
|
||||||
<warmupTime>0</warmupTime>
|
<warmupTime>0</warmupTime>
|
||||||
<defaultCooldownTime>9</defaultCooldownTime>
|
<defaultCooldownTime>16</defaultCooldownTime>
|
||||||
<isMortar>true</isMortar>
|
<isMortar>true</isMortar>
|
||||||
<requireLineOfSight>false</requireLineOfSight>
|
<requireLineOfSight>false</requireLineOfSight>
|
||||||
<minRange>4</minRange>
|
<minRange>4</minRange>
|
||||||
<range>120</range>
|
<range>120</range>
|
||||||
<burstShotCount>1</burstShotCount>
|
<burstShotCount>3</burstShotCount>
|
||||||
<soundCast>Mortar_LaunchA</soundCast>
|
<ticksBetweenBurstShots>12</ticksBetweenBurstShots>
|
||||||
|
<soundCast>Shot_TurretSniper</soundCast>
|
||||||
<muzzleFlashScale>12</muzzleFlashScale>
|
<muzzleFlashScale>12</muzzleFlashScale>
|
||||||
<forcedMissRadius>6</forcedMissRadius>
|
<forcedMissRadius>6</forcedMissRadius>
|
||||||
<targetParams>
|
<targetParams>
|
||||||
@@ -378,4 +266,86 @@
|
|||||||
</li>
|
</li>
|
||||||
</modExtensions>
|
</modExtensions>
|
||||||
</ThingDef>
|
</ThingDef>
|
||||||
|
|
||||||
|
<ThingDef ParentName="BaseWeaponTurret">
|
||||||
|
<defName>WULA_MechFlyerTurretGun</defName>
|
||||||
|
<label>磁力光束</label>
|
||||||
|
<description>一种可以窃取他人武器的内置炮塔。</description>
|
||||||
|
<tradeability>None</tradeability>
|
||||||
|
<destroyOnDrop>true</destroyOnDrop>
|
||||||
|
<graphicData>
|
||||||
|
<texPath>Wula/Weapon/WULA_Weapon_Empty</texPath>
|
||||||
|
<graphicClass>Graphic_Single</graphicClass>
|
||||||
|
</graphicData>
|
||||||
|
<statBases>
|
||||||
|
<Mass>2.6</Mass>
|
||||||
|
<AccuracyTouch>0.60</AccuracyTouch>
|
||||||
|
<AccuracyShort>0.80</AccuracyShort>
|
||||||
|
<AccuracyMedium>0.90</AccuracyMedium>
|
||||||
|
<AccuracyLong>0.85</AccuracyLong>
|
||||||
|
</statBases>
|
||||||
|
<verbs>
|
||||||
|
<li Class="WulaFallenEmpire.VerbProperties_WeaponStealBeam">
|
||||||
|
<verbClass>WulaFallenEmpire.Verb_ShootWeaponStealBeam</verbClass>
|
||||||
|
<hediffToApply>WULA_WeaponStealEffect</hediffToApply>
|
||||||
|
<hediffSeverityPerHit>0.1</hediffSeverityPerHit>
|
||||||
|
<hediffMaxSeverity>1.0</hediffMaxSeverity>
|
||||||
|
<removeHediffOnSteal>true</removeHediffOnSteal>
|
||||||
|
<!-- 基础射线参数 -->
|
||||||
|
<hasStandardCommand>true</hasStandardCommand>
|
||||||
|
<warmupTime>0</warmupTime>
|
||||||
|
<range>5</range>
|
||||||
|
<burstShotCount>5</burstShotCount>
|
||||||
|
<ticksBetweenBurstShots>50</ticksBetweenBurstShots>
|
||||||
|
<beamDamageDef>Wula_Dark_Matter_Beam</beamDamageDef>
|
||||||
|
<beamTotalDamage>3</beamTotalDamage>
|
||||||
|
|
||||||
|
<!-- 消除射线偏移的参数 -->
|
||||||
|
<beamFullWidthRange>1000</beamFullWidthRange>
|
||||||
|
<beamWidth>-1</beamWidth>
|
||||||
|
<beamMaxDeviation>0</beamMaxDeviation>
|
||||||
|
<beamCurvature>0</beamCurvature>
|
||||||
|
<beamStartOffset>0</beamStartOffset>
|
||||||
|
|
||||||
|
<!-- 视觉和音效 -->
|
||||||
|
<muzzleFlashScale>0</muzzleFlashScale>
|
||||||
|
<soundCastBeam>BeamGraser_Shooting</soundCastBeam>
|
||||||
|
<beamGroundFleckDef>Fleck_BeamBurn</beamGroundFleckDef>
|
||||||
|
<beamFleckChancePerTick>0.32</beamFleckChancePerTick>
|
||||||
|
<beamMoteDef>Mote_WULA_RW_Handle_Cannon_Beam</beamMoteDef>
|
||||||
|
<beamEndEffecterDef>GraserBeam_End</beamEndEffecterDef>
|
||||||
|
|
||||||
|
<screenShakeFactor>0.35</screenShakeFactor>
|
||||||
|
|
||||||
|
<!-- 火焰效果 -->
|
||||||
|
<beamChanceToStartFire>0.6</beamChanceToStartFire>
|
||||||
|
<beamChanceToAttachFire>0.6</beamChanceToAttachFire>
|
||||||
|
<beamFireSizeRange>0.25</beamFireSizeRange>
|
||||||
|
|
||||||
|
<!-- 其他射线属性 -->
|
||||||
|
<beamHitsNeighborCells>true</beamHitsNeighborCells>
|
||||||
|
<beamLineFleckChanceCurve>
|
||||||
|
<points>
|
||||||
|
<li>(0, 0)</li>
|
||||||
|
<li>(0.65, 0.4)</li>
|
||||||
|
<li>(1, 0.75)</li>
|
||||||
|
</points>
|
||||||
|
</beamLineFleckChanceCurve>
|
||||||
|
|
||||||
|
<!-- 攻击目标设置 -->
|
||||||
|
<targetParams>
|
||||||
|
<canTargetLocations>true</canTargetLocations>
|
||||||
|
</targetParams>
|
||||||
|
|
||||||
|
<!-- 每发都爆炸 -->
|
||||||
|
<enableExplosion>false</enableExplosion>
|
||||||
|
<!--<explosionShotInterval>1</explosionShotInterval>
|
||||||
|
<explosionRadius>1.8</explosionRadius>
|
||||||
|
<explosionDamageDef>Wula_Dark_Matter_Flame</explosionDamageDef>
|
||||||
|
<explosionDamage>15</explosionDamage>
|
||||||
|
<explosionSound>Explosion_Bomb</explosionSound>
|
||||||
|
<chanceToStartFire>0.6</chanceToStartFire>-->
|
||||||
|
</li>
|
||||||
|
</verbs>
|
||||||
|
</ThingDef>
|
||||||
</Defs>
|
</Defs>
|
||||||
@@ -391,85 +391,4 @@
|
|||||||
</ThingDef>
|
</ThingDef>
|
||||||
|
|
||||||
<!-- 神人大鹅武器 -->
|
<!-- 神人大鹅武器 -->
|
||||||
<ThingDef ParentName="BaseWeaponTurret">
|
|
||||||
<defName>WULA_MechFlyerTurretGun</defName>
|
|
||||||
<label>磁力光束</label>
|
|
||||||
<description>一种可以窃取他人武器的内置炮塔。</description>
|
|
||||||
<tradeability>None</tradeability>
|
|
||||||
<destroyOnDrop>true</destroyOnDrop>
|
|
||||||
<graphicData>
|
|
||||||
<texPath>Wula/Weapon/WULA_Weapon_Empty</texPath>
|
|
||||||
<graphicClass>Graphic_Single</graphicClass>
|
|
||||||
</graphicData>
|
|
||||||
<statBases>
|
|
||||||
<Mass>2.6</Mass>
|
|
||||||
<AccuracyTouch>0.60</AccuracyTouch>
|
|
||||||
<AccuracyShort>0.80</AccuracyShort>
|
|
||||||
<AccuracyMedium>0.90</AccuracyMedium>
|
|
||||||
<AccuracyLong>0.85</AccuracyLong>
|
|
||||||
</statBases>
|
|
||||||
<verbs>
|
|
||||||
<li Class="WulaFallenEmpire.VerbProperties_WeaponStealBeam">
|
|
||||||
<verbClass>WulaFallenEmpire.Verb_ShootWeaponStealBeam</verbClass>
|
|
||||||
<hediffToApply>WULA_WeaponStealEffect</hediffToApply>
|
|
||||||
<hediffSeverityPerHit>0.1</hediffSeverityPerHit>
|
|
||||||
<hediffMaxSeverity>1.0</hediffMaxSeverity>
|
|
||||||
<removeHediffOnSteal>true</removeHediffOnSteal>
|
|
||||||
<!-- 基础射线参数 -->
|
|
||||||
<hasStandardCommand>true</hasStandardCommand>
|
|
||||||
<warmupTime>0</warmupTime>
|
|
||||||
<range>5</range>
|
|
||||||
<burstShotCount>5</burstShotCount>
|
|
||||||
<ticksBetweenBurstShots>50</ticksBetweenBurstShots>
|
|
||||||
<beamDamageDef>Wula_Dark_Matter_Beam</beamDamageDef>
|
|
||||||
<beamTotalDamage>3</beamTotalDamage>
|
|
||||||
|
|
||||||
<!-- 消除射线偏移的参数 -->
|
|
||||||
<beamFullWidthRange>1000</beamFullWidthRange>
|
|
||||||
<beamWidth>-1</beamWidth>
|
|
||||||
<beamMaxDeviation>0</beamMaxDeviation>
|
|
||||||
<beamCurvature>0</beamCurvature>
|
|
||||||
<beamStartOffset>0</beamStartOffset>
|
|
||||||
|
|
||||||
<!-- 视觉和音效 -->
|
|
||||||
<muzzleFlashScale>0</muzzleFlashScale>
|
|
||||||
<soundCastBeam>BeamGraser_Shooting</soundCastBeam>
|
|
||||||
<beamGroundFleckDef>Fleck_BeamBurn</beamGroundFleckDef>
|
|
||||||
<beamFleckChancePerTick>0.32</beamFleckChancePerTick>
|
|
||||||
<!-- <beamMoteDef>Mote_Wula_Dark_Magnetic_Beam</beamMoteDef> -->
|
|
||||||
<beamEndEffecterDef>GraserBeam_End</beamEndEffecterDef>
|
|
||||||
|
|
||||||
<screenShakeFactor>0.35</screenShakeFactor>
|
|
||||||
|
|
||||||
<!-- 火焰效果 -->
|
|
||||||
<beamChanceToStartFire>0.6</beamChanceToStartFire>
|
|
||||||
<beamChanceToAttachFire>0.6</beamChanceToAttachFire>
|
|
||||||
<beamFireSizeRange>0.25</beamFireSizeRange>
|
|
||||||
|
|
||||||
<!-- 其他射线属性 -->
|
|
||||||
<beamHitsNeighborCells>true</beamHitsNeighborCells>
|
|
||||||
<beamLineFleckChanceCurve>
|
|
||||||
<points>
|
|
||||||
<li>(0, 0)</li>
|
|
||||||
<li>(0.65, 0.4)</li>
|
|
||||||
<li>(1, 0.75)</li>
|
|
||||||
</points>
|
|
||||||
</beamLineFleckChanceCurve>
|
|
||||||
|
|
||||||
<!-- 攻击目标设置 -->
|
|
||||||
<targetParams>
|
|
||||||
<canTargetLocations>true</canTargetLocations>
|
|
||||||
</targetParams>
|
|
||||||
|
|
||||||
<!-- 每发都爆炸 -->
|
|
||||||
<enableExplosion>false</enableExplosion>
|
|
||||||
<!--<explosionShotInterval>1</explosionShotInterval>
|
|
||||||
<explosionRadius>1.8</explosionRadius>
|
|
||||||
<explosionDamageDef>Wula_Dark_Matter_Flame</explosionDamageDef>
|
|
||||||
<explosionDamage>15</explosionDamage>
|
|
||||||
<explosionSound>Explosion_Bomb</explosionSound>
|
|
||||||
<chanceToStartFire>0.6</chanceToStartFire>-->
|
|
||||||
</li>
|
|
||||||
</verbs>
|
|
||||||
</ThingDef>
|
|
||||||
</Defs>
|
</Defs>
|
||||||
@@ -974,7 +974,7 @@
|
|||||||
<ThingDef Name="Wula_Mech_Mobile_Factory" ParentName="WULA_BaseMechanoid">
|
<ThingDef Name="Wula_Mech_Mobile_Factory" ParentName="WULA_BaseMechanoid">
|
||||||
<defName>Wula_Mech_Mobile_Factory</defName> <!-- 修改了defName以避免冲突 -->
|
<defName>Wula_Mech_Mobile_Factory</defName> <!-- 修改了defName以避免冲突 -->
|
||||||
<label>MFm-2"陆行舰"</label>
|
<label>MFm-2"陆行舰"</label>
|
||||||
<description>乌拉帝国的大型战争机械,简直就是一座移动堡垒——它不仅装甲厚实、火炮林立,还能在战场上生产大量的辅助战争机械以形成坚实的弹性阵线,生来就是为了粉碎坚固的堡垒和顽强的抵抗。</description>
|
<description>乌拉帝国的大型战争机械,简直就是一座移动堡垒——它不仅装甲厚实、火炮林立,还能在战场上生产大量的辅助战争机械以形成坚实的弹性阵线,生来就是为了粉碎坚固的要塞和顽强的抵抗。</description>
|
||||||
<statBases>
|
<statBases>
|
||||||
<BandwidthCost>1</BandwidthCost>
|
<BandwidthCost>1</BandwidthCost>
|
||||||
<MoveSpeed>1</MoveSpeed>
|
<MoveSpeed>1</MoveSpeed>
|
||||||
@@ -1022,7 +1022,7 @@
|
|||||||
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
||||||
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
||||||
<parentTagDef>Body</parentTagDef>
|
<parentTagDef>Body</parentTagDef>
|
||||||
<overrideMeshSize>(1, 1)</overrideMeshSize>
|
<overrideMeshSize>(2, 2)</overrideMeshSize>
|
||||||
<baseLayer>20</baseLayer>
|
<baseLayer>20</baseLayer>
|
||||||
<pawnType>Any</pawnType>
|
<pawnType>Any</pawnType>
|
||||||
<drawData>
|
<drawData>
|
||||||
@@ -1035,15 +1035,15 @@
|
|||||||
<dataEast>
|
<dataEast>
|
||||||
<rotationOffset>90</rotationOffset>
|
<rotationOffset>90</rotationOffset>
|
||||||
<layer>-5</layer>
|
<layer>-5</layer>
|
||||||
<offset>(2.15, 0, -1)</offset>
|
<offset>(3.25, 0, -1)</offset>
|
||||||
</dataEast>
|
</dataEast>
|
||||||
<dataSouth>
|
<dataSouth>
|
||||||
<rotationOffset>-90</rotationOffset>
|
<rotationOffset>-90</rotationOffset>
|
||||||
<offset>(1, 0, -1.45)</offset>
|
<offset>(1.5, 0, -1.45)</offset>
|
||||||
</dataSouth>
|
</dataSouth>
|
||||||
<dataWest>
|
<dataWest>
|
||||||
<rotationOffset>90</rotationOffset>
|
<rotationOffset>90</rotationOffset>
|
||||||
<offset>(-2.15, 0, -1)</offset>
|
<offset>(-3.25, 0, -1)</offset>
|
||||||
</dataWest>
|
</dataWest>
|
||||||
</drawData>
|
</drawData>
|
||||||
</li>
|
</li>
|
||||||
@@ -1058,7 +1058,7 @@
|
|||||||
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
||||||
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
||||||
<parentTagDef>Body</parentTagDef>
|
<parentTagDef>Body</parentTagDef>
|
||||||
<overrideMeshSize>(1, 1)</overrideMeshSize>
|
<overrideMeshSize>(2, 2)</overrideMeshSize>
|
||||||
<baseLayer>20</baseLayer>
|
<baseLayer>20</baseLayer>
|
||||||
<pawnType>Any</pawnType>
|
<pawnType>Any</pawnType>
|
||||||
<drawData>
|
<drawData>
|
||||||
@@ -1069,15 +1069,15 @@
|
|||||||
</dataNorth>
|
</dataNorth>
|
||||||
<dataEast>
|
<dataEast>
|
||||||
<rotationOffset>-90</rotationOffset>
|
<rotationOffset>-90</rotationOffset>
|
||||||
<offset>(2.15, 0, -1)</offset>
|
<offset>(3.25, 0, -1)</offset>
|
||||||
</dataEast>
|
</dataEast>
|
||||||
<dataSouth>
|
<dataSouth>
|
||||||
<rotationOffset>-90</rotationOffset>
|
<rotationOffset>-90</rotationOffset>
|
||||||
<offset>(-1, 0, -1.45)</offset>
|
<offset>(-1.6, 0, -1.45)</offset>
|
||||||
</dataSouth>
|
</dataSouth>
|
||||||
<dataWest>
|
<dataWest>
|
||||||
<rotationOffset>90</rotationOffset>
|
<rotationOffset>90</rotationOffset>
|
||||||
<offset>(-2.15, 0, -1)</offset>
|
<offset>(-3.25, 0, -1)</offset>
|
||||||
<layer>-5</layer>
|
<layer>-5</layer>
|
||||||
</dataWest>
|
</dataWest>
|
||||||
</drawData>
|
</drawData>
|
||||||
@@ -1093,7 +1093,7 @@
|
|||||||
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
||||||
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
||||||
<parentTagDef>Body</parentTagDef>
|
<parentTagDef>Body</parentTagDef>
|
||||||
<overrideMeshSize>(1, 1)</overrideMeshSize>
|
<overrideMeshSize>(2, 2)</overrideMeshSize>
|
||||||
<baseLayer>20</baseLayer>
|
<baseLayer>20</baseLayer>
|
||||||
<pawnType>Any</pawnType>
|
<pawnType>Any</pawnType>
|
||||||
<drawData>
|
<drawData>
|
||||||
@@ -1106,15 +1106,15 @@
|
|||||||
<dataEast>
|
<dataEast>
|
||||||
<rotationOffset>90</rotationOffset>
|
<rotationOffset>90</rotationOffset>
|
||||||
<layer>-5</layer>
|
<layer>-5</layer>
|
||||||
<offset>(1.4, 0, -0.35)</offset>
|
<offset>(2.4, 0, -0.35)</offset>
|
||||||
</dataEast>
|
</dataEast>
|
||||||
<dataSouth>
|
<dataSouth>
|
||||||
<rotationOffset>-90</rotationOffset>
|
<rotationOffset>-90</rotationOffset>
|
||||||
<offset>(1.3, 0, -0.45)</offset>
|
<offset>(2.3, 0, -0.45)</offset>
|
||||||
</dataSouth>
|
</dataSouth>
|
||||||
<dataWest>
|
<dataWest>
|
||||||
<rotationOffset>90</rotationOffset>
|
<rotationOffset>90</rotationOffset>
|
||||||
<offset>(-1.4, 0, -0.35)</offset>
|
<offset>(-2.4, 0, -0.35)</offset>
|
||||||
</dataWest>
|
</dataWest>
|
||||||
</drawData>
|
</drawData>
|
||||||
</li>
|
</li>
|
||||||
@@ -1129,7 +1129,7 @@
|
|||||||
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
||||||
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
||||||
<parentTagDef>Body</parentTagDef>
|
<parentTagDef>Body</parentTagDef>
|
||||||
<overrideMeshSize>(1, 1)</overrideMeshSize>
|
<overrideMeshSize>(2, 2)</overrideMeshSize>
|
||||||
<baseLayer>20</baseLayer>
|
<baseLayer>20</baseLayer>
|
||||||
<pawnType>Any</pawnType>
|
<pawnType>Any</pawnType>
|
||||||
<drawData>
|
<drawData>
|
||||||
@@ -1141,16 +1141,16 @@
|
|||||||
</dataNorth>
|
</dataNorth>
|
||||||
<dataEast>
|
<dataEast>
|
||||||
<rotationOffset>-90</rotationOffset>
|
<rotationOffset>-90</rotationOffset>
|
||||||
<offset>(1.4, 0, -0.35)</offset>
|
<offset>(2.4, 0, -0.35)</offset>
|
||||||
</dataEast>
|
</dataEast>
|
||||||
<dataSouth>
|
<dataSouth>
|
||||||
<rotationOffset>-90</rotationOffset>
|
<rotationOffset>-90</rotationOffset>
|
||||||
<offset>(-1.3, 0, -0.45)</offset>
|
<offset>(-2.3, 0, -0.45)</offset>
|
||||||
</dataSouth>
|
</dataSouth>
|
||||||
<dataWest>
|
<dataWest>
|
||||||
<rotationOffset>90</rotationOffset>
|
<rotationOffset>90</rotationOffset>
|
||||||
<layer>-5</layer>
|
<layer>-5</layer>
|
||||||
<offset>(-1.4, 0, -0.35)</offset>
|
<offset>(-2.4, 0, -0.35)</offset>
|
||||||
</dataWest>
|
</dataWest>
|
||||||
</drawData>
|
</drawData>
|
||||||
</li>
|
</li>
|
||||||
@@ -1165,7 +1165,7 @@
|
|||||||
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
||||||
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
||||||
<parentTagDef>Body</parentTagDef>
|
<parentTagDef>Body</parentTagDef>
|
||||||
<overrideMeshSize>(1, 1)</overrideMeshSize>
|
<overrideMeshSize>(2, 2)</overrideMeshSize>
|
||||||
<baseLayer>20</baseLayer>
|
<baseLayer>20</baseLayer>
|
||||||
<pawnType>Any</pawnType>
|
<pawnType>Any</pawnType>
|
||||||
<drawData>
|
<drawData>
|
||||||
@@ -1178,15 +1178,15 @@
|
|||||||
<dataEast>
|
<dataEast>
|
||||||
<rotationOffset>90</rotationOffset>
|
<rotationOffset>90</rotationOffset>
|
||||||
<layer>-5</layer>
|
<layer>-5</layer>
|
||||||
<offset>(0.6, 0, 0.15)</offset>
|
<offset>(1.6, 0, 0.25)</offset>
|
||||||
</dataEast>
|
</dataEast>
|
||||||
<dataSouth>
|
<dataSouth>
|
||||||
<rotationOffset>-90</rotationOffset>
|
<rotationOffset>-90</rotationOffset>
|
||||||
<offset>(-1.25, 0, 0.65)</offset>
|
<offset>(-2.15, 0, 0.65)</offset>
|
||||||
</dataSouth>
|
</dataSouth>
|
||||||
<dataWest>
|
<dataWest>
|
||||||
<rotationOffset>90</rotationOffset>
|
<rotationOffset>90</rotationOffset>
|
||||||
<offset>(-0.6, 0, 0.15)</offset>
|
<offset>(-1.6, 0, 0.25)</offset>
|
||||||
</dataWest>
|
</dataWest>
|
||||||
</drawData>
|
</drawData>
|
||||||
</li>
|
</li>
|
||||||
@@ -1201,7 +1201,7 @@
|
|||||||
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
||||||
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
||||||
<parentTagDef>Body</parentTagDef>
|
<parentTagDef>Body</parentTagDef>
|
||||||
<overrideMeshSize>(1, 1)</overrideMeshSize>
|
<overrideMeshSize>(2, 2)</overrideMeshSize>
|
||||||
<baseLayer>20</baseLayer>
|
<baseLayer>20</baseLayer>
|
||||||
<pawnType>Any</pawnType>
|
<pawnType>Any</pawnType>
|
||||||
<drawData>
|
<drawData>
|
||||||
@@ -1213,16 +1213,16 @@
|
|||||||
</dataNorth>
|
</dataNorth>
|
||||||
<dataEast>
|
<dataEast>
|
||||||
<rotationOffset>-90</rotationOffset>
|
<rotationOffset>-90</rotationOffset>
|
||||||
<offset>(0.6, 0, 0.15)</offset>
|
<offset>(1.6, 0, 0.25)</offset>
|
||||||
</dataEast>
|
</dataEast>
|
||||||
<dataSouth>
|
<dataSouth>
|
||||||
<rotationOffset>-90</rotationOffset>
|
<rotationOffset>-90</rotationOffset>
|
||||||
<offset>(1.25, 0, 0.65)</offset>
|
<offset>(2.05, 0, 0.65)</offset>
|
||||||
</dataSouth>
|
</dataSouth>
|
||||||
<dataWest>
|
<dataWest>
|
||||||
<rotationOffset>90</rotationOffset>
|
<rotationOffset>90</rotationOffset>
|
||||||
<layer>-5</layer>
|
<layer>-5</layer>
|
||||||
<offset>(-0.6, 0, 0.15)</offset>
|
<offset>(-1.6, 0, 0.25)</offset>
|
||||||
</dataWest>
|
</dataWest>
|
||||||
</drawData>
|
</drawData>
|
||||||
</li>
|
</li>
|
||||||
@@ -1249,6 +1249,97 @@
|
|||||||
</li>
|
</li>
|
||||||
</comps>
|
</comps>
|
||||||
</ThingDef>
|
</ThingDef>
|
||||||
|
<ThingDef Name="WULA_Mech_Flyer" ParentName="BaseMechanoidWalker">
|
||||||
|
<defName>WULA_Mech_Flyer</defName>
|
||||||
|
<label>CRm-51"兵蚁"</label>
|
||||||
|
<description>乌拉帝国的自律机械部队,它们通常由更高一级的机械作战节点自行制造,可以在靠近敌人后用装备的磁力射线从敌人身上窃取武器。</description>
|
||||||
|
<tools>
|
||||||
|
<li>
|
||||||
|
<label>head</label>
|
||||||
|
<capacities>
|
||||||
|
<li>Blunt</li>
|
||||||
|
</capacities>
|
||||||
|
<power>8.5</power>
|
||||||
|
<cooldownTime>2</cooldownTime>
|
||||||
|
<linkedBodyPartsGroup>HeadAttackTool</linkedBodyPartsGroup>
|
||||||
|
<ensureLinkedBodyPartsGroupAlwaysUsable>true</ensureLinkedBodyPartsGroupAlwaysUsable>
|
||||||
|
<chanceFactor>0.2</chanceFactor>
|
||||||
|
</li>
|
||||||
|
</tools>
|
||||||
|
<race>
|
||||||
|
<body>Mech_Light</body>
|
||||||
|
<baseHealthScale>0.7</baseHealthScale>
|
||||||
|
|
||||||
|
<flightStartChanceOnJobStart>1</flightStartChanceOnJobStart>
|
||||||
|
|
||||||
|
<lifeStageAges Inherit="False">
|
||||||
|
<li>
|
||||||
|
<def>MechanoidFullyFormed</def>
|
||||||
|
<minAge>0</minAge>
|
||||||
|
<soundWounded>Pawn_Mech_Scyther_Wounded</soundWounded>
|
||||||
|
<soundDeath>Pawn_Mech_Scyther_Death</soundDeath>
|
||||||
|
<soundCall>Pawn_Mech_Scyther_Call</soundCall>
|
||||||
|
</li>
|
||||||
|
</lifeStageAges>
|
||||||
|
<thinkTreeConstant>WULA_Mech_Flyer_Constant</thinkTreeConstant>
|
||||||
|
<deathAction Class="DeathActionProperties_Vanish">
|
||||||
|
<workerClass>DeathActionWorker_Vanish</workerClass>
|
||||||
|
<filth>Filth_MachineBits</filth>
|
||||||
|
<filthCountRange>1~2</filthCountRange>
|
||||||
|
</deathAction>
|
||||||
|
</race>
|
||||||
|
<statBases>
|
||||||
|
<BandwidthCost MayRequire="Ludeon.RimWorld.Biotech">0</BandwidthCost>
|
||||||
|
<MaxFlightTime>9999</MaxFlightTime>
|
||||||
|
<FlightCooldown>0</FlightCooldown>
|
||||||
|
</statBases>
|
||||||
|
<comps Inherit="False">
|
||||||
|
<!--加上这个组件的机械体可以更换武器-->
|
||||||
|
<li Class="WulaFallenEmpire.CompProperties_MechWeapon" />
|
||||||
|
<li Class="CompProperties_CanBeDormant" />
|
||||||
|
<li Class="CompProperties_WakeUpDormant">
|
||||||
|
<wakeUpOnDamage>true</wakeUpOnDamage>
|
||||||
|
<wakeUpCheckRadius>30</wakeUpCheckRadius>
|
||||||
|
<wakeUpSound>MechanoidsWakeUp</wakeUpSound>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li Class="CompProperties_TurretGun">
|
||||||
|
<turretDef>WULA_MechFlyerTurretGun</turretDef>
|
||||||
|
<angleOffset>-90</angleOffset>
|
||||||
|
<autoAttack>false</autoAttack>
|
||||||
|
<renderNodeProperties>
|
||||||
|
<li>
|
||||||
|
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
||||||
|
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
||||||
|
<parentTagDef>Body</parentTagDef>
|
||||||
|
<overrideMeshSize>(1, 1)</overrideMeshSize>
|
||||||
|
<baseLayer>20</baseLayer>
|
||||||
|
<pawnType>Any</pawnType>
|
||||||
|
<drawData>
|
||||||
|
<dataWest>
|
||||||
|
<rotationOffset>180</rotationOffset>
|
||||||
|
<offset>(0, 0, 0)</offset>
|
||||||
|
</dataWest>
|
||||||
|
</drawData>
|
||||||
|
</li>
|
||||||
|
</renderNodeProperties>
|
||||||
|
</li>
|
||||||
|
<li Class="CompProperties_MechPowerCell">
|
||||||
|
<totalPowerTicks>10000</totalPowerTicks>
|
||||||
|
</li>
|
||||||
|
<!-- 飞行组件 -->
|
||||||
|
<li Class="WulaFallenEmpire.CompProperties_PawnFlight">
|
||||||
|
|
||||||
|
<!-- 飞行触发条件:仅在征召时飞行 -->
|
||||||
|
<flightCondition>Drafted</flightCondition>
|
||||||
|
|
||||||
|
<!-- 链接到我们刚刚创建的 AnimationDef -->
|
||||||
|
<flyingAnimationNorth>WULA_Hover_FlyNorth</flyingAnimationNorth>
|
||||||
|
<flyingAnimationEast>WULA_Hover_FlyEast</flyingAnimationEast>
|
||||||
|
<flyingAnimationSouth>WULA_Hover_FlySouth</flyingAnimationSouth>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
<ThingDef Name="Wula_AI_Heavy_Panzer" ParentName="HeavyMechanoid">
|
<ThingDef Name="Wula_AI_Heavy_Panzer" ParentName="HeavyMechanoid">
|
||||||
<defName>Wula_AI_Heavy_Panzer</defName>
|
<defName>Wula_AI_Heavy_Panzer</defName>
|
||||||
|
|||||||
@@ -1,177 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" ?>
|
|
||||||
<Defs>
|
|
||||||
<ThingDef Name="WULA_Mech_Flyer" ParentName="BaseMechanoidWalker">
|
|
||||||
<defName>WULA_Mech_Flyer</defName>
|
|
||||||
<label>CRm-51"兵蚁"</label>
|
|
||||||
<description>乌拉帝国图书馆所制造的最小型的机械体,它们通常由更高一级的机械作战节点自行制造,拥有飞行能力可以快速接近敌方单位,同时使用装备的磁力射线从敌人身上窃取武器。</description>
|
|
||||||
<tools>
|
|
||||||
<li>
|
|
||||||
<label>head</label>
|
|
||||||
<capacities>
|
|
||||||
<li>Blunt</li>
|
|
||||||
</capacities>
|
|
||||||
<power>8.5</power>
|
|
||||||
<cooldownTime>2</cooldownTime>
|
|
||||||
<linkedBodyPartsGroup>HeadAttackTool</linkedBodyPartsGroup>
|
|
||||||
<ensureLinkedBodyPartsGroupAlwaysUsable>true</ensureLinkedBodyPartsGroupAlwaysUsable>
|
|
||||||
<chanceFactor>0.2</chanceFactor>
|
|
||||||
</li>
|
|
||||||
</tools>
|
|
||||||
<race>
|
|
||||||
<body>Mech_Light</body>
|
|
||||||
<baseHealthScale>0.72</baseHealthScale>
|
|
||||||
<detritusLeavings>
|
|
||||||
<li>
|
|
||||||
<def>ChunkMechanoidSlag</def>
|
|
||||||
<texOverrideIndex>11</texOverrideIndex>
|
|
||||||
<spawnChance>0.1</spawnChance>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<def>ChunkMechanoidSlag</def>
|
|
||||||
<texOverrideIndex>12</texOverrideIndex>
|
|
||||||
<spawnChance>0.1</spawnChance>
|
|
||||||
</li>
|
|
||||||
</detritusLeavings>
|
|
||||||
<flightStartChanceOnJobStart>0.5</flightStartChanceOnJobStart>
|
|
||||||
<lifeStageAges Inherit="False">
|
|
||||||
<li>
|
|
||||||
<def>MechanoidFullyFormed</def>
|
|
||||||
<minAge>0</minAge>
|
|
||||||
<soundWounded>Pawn_Mech_Scyther_Wounded</soundWounded>
|
|
||||||
<soundDeath>Pawn_Mech_Scyther_Death</soundDeath>
|
|
||||||
<soundCall>Pawn_Mech_Scyther_Call</soundCall>
|
|
||||||
</li>
|
|
||||||
</lifeStageAges>
|
|
||||||
<thinkTreeConstant>WULA_Mech_Flyer_Constant</thinkTreeConstant>
|
|
||||||
<deathAction Class="DeathActionProperties_Vanish">
|
|
||||||
<workerClass>DeathActionWorker_Vanish</workerClass>
|
|
||||||
<filth>Filth_MachineBits</filth>
|
|
||||||
<filthCountRange>1~2</filthCountRange>
|
|
||||||
</deathAction>
|
|
||||||
</race>
|
|
||||||
<statBases>
|
|
||||||
<BandwidthCost MayRequire="Ludeon.RimWorld.Biotech">0</BandwidthCost>
|
|
||||||
<MaxFlightTime>30</MaxFlightTime>
|
|
||||||
<FlightCooldown>10</FlightCooldown>
|
|
||||||
</statBases>
|
|
||||||
<comps Inherit="False">
|
|
||||||
<!--加上这个组件的机械体会直接跳过原版指挥范围判定-->
|
|
||||||
<li Class="WulaFallenEmpire.CompProperties_GlobalMechCommand" />
|
|
||||||
<!--加上这个组件的机械体可以更换武器-->
|
|
||||||
<li Class="WulaFallenEmpire.CompProperties_MechWeapon" />
|
|
||||||
<li Class="CompProperties_CanBeDormant" />
|
|
||||||
<li Class="CompProperties_WakeUpDormant">
|
|
||||||
<wakeUpOnDamage>true</wakeUpOnDamage>
|
|
||||||
<wakeUpCheckRadius>30</wakeUpCheckRadius>
|
|
||||||
<wakeUpSound>MechanoidsWakeUp</wakeUpSound>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li Class="CompProperties_TurretGun">
|
|
||||||
<turretDef>WULA_MechFlyerTurretGun</turretDef>
|
|
||||||
<angleOffset>-90</angleOffset>
|
|
||||||
<autoAttack>false</autoAttack>
|
|
||||||
<renderNodeProperties>
|
|
||||||
<li>
|
|
||||||
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
|
||||||
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
|
||||||
<parentTagDef>Body</parentTagDef>
|
|
||||||
<overrideMeshSize>(1, 1)</overrideMeshSize>
|
|
||||||
<baseLayer>20</baseLayer>
|
|
||||||
<pawnType>Any</pawnType>
|
|
||||||
<drawData>
|
|
||||||
<dataWest>
|
|
||||||
<rotationOffset>180</rotationOffset>
|
|
||||||
<offset>(0, 0, 0)</offset>
|
|
||||||
</dataWest>
|
|
||||||
</drawData>
|
|
||||||
</li>
|
|
||||||
</renderNodeProperties>
|
|
||||||
</li>
|
|
||||||
<li Class="CompProperties_MechPowerCell">
|
|
||||||
<totalPowerTicks>10000</totalPowerTicks>
|
|
||||||
</li>
|
|
||||||
</comps>
|
|
||||||
</ThingDef>
|
|
||||||
<PawnKindDef Name="WULA_Mech_Flyer_PawnKind" ParentName="BaseMechanoidKind">
|
|
||||||
<defName>WULA_Mech_Flyer</defName>
|
|
||||||
<label>CRm-51"兵蚁"</label>
|
|
||||||
<race>WULA_Mech_Flyer</race>
|
|
||||||
<combatPower>190</combatPower>
|
|
||||||
<allowInMechClusters>false</allowInMechClusters>
|
|
||||||
<flyingAnimationFramePathPrefix>Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer_Flying_</flyingAnimationFramePathPrefix>
|
|
||||||
<flyingAnimationFrameCount>2</flyingAnimationFrameCount>
|
|
||||||
<flyingAnimationTicksPerFrame>2</flyingAnimationTicksPerFrame>
|
|
||||||
<!-- <flyingAnimationDrawSize>1.35</flyingAnimationDrawSize> -->
|
|
||||||
<flyingAnimationInheritColors>false</flyingAnimationInheritColors>
|
|
||||||
<forceDeathOnDowned>true</forceDeathOnDowned>
|
|
||||||
<forceNoDeathNotification>true</forceNoDeathNotification>
|
|
||||||
<lifeStages>
|
|
||||||
<li>
|
|
||||||
<bodyGraphicData>
|
|
||||||
<texPath>Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer</texPath>
|
|
||||||
<shaderType>CutoutWithOverlay</shaderType>
|
|
||||||
<graphicClass>Graphic_Multi</graphicClass>
|
|
||||||
<drawSize>1.5</drawSize>
|
|
||||||
<shadowData>
|
|
||||||
<volume>(0.4, 0.8, 0.4)</volume>
|
|
||||||
</shadowData>
|
|
||||||
</bodyGraphicData>
|
|
||||||
</li>
|
|
||||||
</lifeStages>
|
|
||||||
<techHediffsChance>1</techHediffsChance>
|
|
||||||
<techHediffsMoney>9999~9999</techHediffsMoney>
|
|
||||||
</PawnKindDef>
|
|
||||||
<PawnKindDef ParentName="WULA_Mech_Flyer_PawnKind">
|
|
||||||
<defName>WULA_Mech_Flyer_Slow</defName>
|
|
||||||
</PawnKindDef>
|
|
||||||
<ThingDef ParentName="WULA_Mech_Flyer">
|
|
||||||
<defName>WULA_Mech_Flyer_Melta</defName>
|
|
||||||
<label>CRm-75"红火蚁"</label>
|
|
||||||
<description>乌拉帝国图书馆所制造的最小型的机械体,它们通常由更高一级的机械作战节点自行制造,拥有飞行能力可以快速接近敌方单位,同时使用装备的热熔喷射器向敌方喷射可以融化装甲的热熔束。</description>
|
|
||||||
<comps Inherit="False">
|
|
||||||
<!--加上这个组件的机械体会直接跳过原版指挥范围判定-->
|
|
||||||
<li Class="WulaFallenEmpire.CompProperties_GlobalMechCommand" />
|
|
||||||
<!--加上这个组件的机械体可以更换武器-->
|
|
||||||
<li Class="WulaFallenEmpire.CompProperties_MechWeapon" />
|
|
||||||
<li Class="CompProperties_CanBeDormant" />
|
|
||||||
<li Class="CompProperties_WakeUpDormant">
|
|
||||||
<wakeUpOnDamage>true</wakeUpOnDamage>
|
|
||||||
<wakeUpCheckRadius>30</wakeUpCheckRadius>
|
|
||||||
<wakeUpSound>MechanoidsWakeUp</wakeUpSound>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li Class="CompProperties_TurretGun">
|
|
||||||
<turretDef>WULA_MechFlyerTurretGun_Melta</turretDef>
|
|
||||||
<angleOffset>-90</angleOffset>
|
|
||||||
<autoAttack>false</autoAttack>
|
|
||||||
<renderNodeProperties>
|
|
||||||
<li>
|
|
||||||
<nodeClass>PawnRenderNode_TurretGun</nodeClass>
|
|
||||||
<workerClass>PawnRenderNodeWorker_TurretGun</workerClass>
|
|
||||||
<parentTagDef>Body</parentTagDef>
|
|
||||||
<overrideMeshSize>(1, 1)</overrideMeshSize>
|
|
||||||
<baseLayer>20</baseLayer>
|
|
||||||
<pawnType>Any</pawnType>
|
|
||||||
<drawData>
|
|
||||||
<dataWest>
|
|
||||||
<rotationOffset>180</rotationOffset>
|
|
||||||
<offset>(0, 0, 0)</offset>
|
|
||||||
</dataWest>
|
|
||||||
</drawData>
|
|
||||||
</li>
|
|
||||||
</renderNodeProperties>
|
|
||||||
</li>
|
|
||||||
<li Class="CompProperties_MechPowerCell">
|
|
||||||
<totalPowerTicks>10000</totalPowerTicks>
|
|
||||||
</li>
|
|
||||||
</comps>
|
|
||||||
</ThingDef>
|
|
||||||
<PawnKindDef Name="WULA_Mech_Flyer_Melta_PawnKind" ParentName="WULA_Mech_Flyer_PawnKind">
|
|
||||||
<defName>WULA_Mech_Flyer_Melta</defName>
|
|
||||||
<label>CRm-75"红火蚁"</label>
|
|
||||||
<race>WULA_Mech_Flyer_Melta</race>
|
|
||||||
</PawnKindDef>
|
|
||||||
<PawnKindDef ParentName="WULA_Mech_Flyer_Melta_PawnKind">
|
|
||||||
<defName>WULA_Mech_Flyer_Melta_Slow</defName>
|
|
||||||
</PawnKindDef>
|
|
||||||
</Defs>
|
|
||||||
@@ -335,4 +335,6 @@
|
|||||||
<WULA_FlyOverCooldown.CooldownRemaining>冷却:{0}</WULA_FlyOverCooldown.CooldownRemaining>
|
<WULA_FlyOverCooldown.CooldownRemaining>冷却:{0}</WULA_FlyOverCooldown.CooldownRemaining>
|
||||||
<WULA_FlyOverCooldown.BombardmentFacilityStatus>武器阵列:{0}</WULA_FlyOverCooldown.BombardmentFacilityStatus>
|
<WULA_FlyOverCooldown.BombardmentFacilityStatus>武器阵列:{0}</WULA_FlyOverCooldown.BombardmentFacilityStatus>
|
||||||
<WULA_FlyOverCooldown.BombardmentFacilityReady>武器阵列:就绪</WULA_FlyOverCooldown.BombardmentFacilityReady>
|
<WULA_FlyOverCooldown.BombardmentFacilityReady>武器阵列:就绪</WULA_FlyOverCooldown.BombardmentFacilityReady>
|
||||||
|
|
||||||
|
<SkyfallerPawnLanded>战争机械已部署</SkyfallerPawnLanded>
|
||||||
</LanguageData>
|
</LanguageData>
|
||||||
|
After Width: | Height: | Size: 673 B |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 152 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 182 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 200 KiB |
|
After Width: | Height: | Size: 152 KiB |
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 696 KiB |
|
After Width: | Height: | Size: 6.8 KiB |
@@ -0,0 +1,44 @@
|
|||||||
|
using Verse;
|
||||||
|
using RimWorld;
|
||||||
|
|
||||||
|
namespace WulaFallenEmpire
|
||||||
|
{
|
||||||
|
public class CompProperties_AbilityLaunchMultiProjectile : CompProperties_AbilityLaunchProjectile
|
||||||
|
{
|
||||||
|
public int numProjectiles = 1;
|
||||||
|
|
||||||
|
public CompProperties_AbilityLaunchMultiProjectile()
|
||||||
|
{
|
||||||
|
compClass = typeof(CompAbilityEffect_LaunchMultiProjectile);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class CompAbilityEffect_LaunchMultiProjectile : CompAbilityEffect
|
||||||
|
{
|
||||||
|
public new CompProperties_AbilityLaunchMultiProjectile Props => (CompProperties_AbilityLaunchMultiProjectile)props;
|
||||||
|
|
||||||
|
public override void Apply(LocalTargetInfo target, LocalTargetInfo dest)
|
||||||
|
{
|
||||||
|
base.Apply(target, dest);
|
||||||
|
for (int i = 0; i < Props.numProjectiles; i++)
|
||||||
|
{
|
||||||
|
LaunchProjectile(target);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LaunchProjectile(LocalTargetInfo target)
|
||||||
|
{
|
||||||
|
if (Props.projectileDef != null)
|
||||||
|
{
|
||||||
|
Pawn pawn = parent.pawn;
|
||||||
|
Projectile projectile = (Projectile)GenSpawn.Spawn(Props.projectileDef, pawn.Position, pawn.Map);
|
||||||
|
projectile.Launch(pawn, pawn.DrawPos, target, target, ProjectileHitFlags.IntendedTarget, parent.verb.preventFriendlyFire);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool AICanTargetNow(LocalTargetInfo target)
|
||||||
|
{
|
||||||
|
return target.Pawn != null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
using HarmonyLib;
|
||||||
|
using RimWorld;
|
||||||
|
using Verse;
|
||||||
|
using Verse.AI;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace WulaFallenEmpire
|
||||||
|
{
|
||||||
|
// 核心补丁:修复威胁禁用检查
|
||||||
|
[HarmonyPatch(typeof(Pawn), "ThreatDisabled")]
|
||||||
|
public static class Patch_Pawn_ThreatDisabled
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn __instance, IAttackTargetSearcher disabledFor, ref bool __result)
|
||||||
|
{
|
||||||
|
if (!__result) return;
|
||||||
|
if (!__instance.IsColonyMech) return;
|
||||||
|
|
||||||
|
var comp = __instance.GetComp<CompAutonomousMech>();
|
||||||
|
if (comp != null && comp.CanFightAutonomously)
|
||||||
|
{
|
||||||
|
__result = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 核心补丁:修复机械师需求检查 - 正确的方法在 MechanitorUtility 中
|
||||||
|
[HarmonyPatch(typeof(MechanitorUtility), "IsColonyMechRequiringMechanitor")]
|
||||||
|
public static class Patch_MechanitorUtility_IsColonyMechRequiringMechanitor
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn mech, ref bool __result)
|
||||||
|
{
|
||||||
|
if (__result && mech.IsColonyMech)
|
||||||
|
{
|
||||||
|
var comp = mech.GetComp<CompAutonomousMech>();
|
||||||
|
if (comp != null && comp.CanFightAutonomously)
|
||||||
|
{
|
||||||
|
__result = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -109,6 +109,16 @@ namespace WulaFallenEmpire
|
|||||||
return CanBeAutonomous;
|
return CanBeAutonomous;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public bool IsInCombatMode
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (MechPawn == null || MechPawn.Dead || MechPawn.Downed)
|
||||||
|
return false;
|
||||||
|
// 被征召或处于自主战斗模式
|
||||||
|
return MechPawn.Drafted || (CanFightAutonomously && MechPawn.mindState?.duty?.def == DutyDefOf.AssaultColony);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 在 CompAutonomousMech 类中添加这个新属性
|
// 在 CompAutonomousMech 类中添加这个新属性
|
||||||
public bool CanFightAutonomously
|
public bool CanFightAutonomously
|
||||||
|
|||||||
@@ -0,0 +1,76 @@
|
|||||||
|
using Verse;
|
||||||
|
using RimWorld;
|
||||||
|
|
||||||
|
namespace WulaFallenEmpire
|
||||||
|
{
|
||||||
|
public class CompProperties_SkyfallerPawnSpawner : CompProperties
|
||||||
|
{
|
||||||
|
public PawnKindDef pawnKind;
|
||||||
|
public FactionDef faction;
|
||||||
|
public bool spawnDrafted = false;
|
||||||
|
public bool spawnHostile = false;
|
||||||
|
|
||||||
|
public CompProperties_SkyfallerPawnSpawner()
|
||||||
|
{
|
||||||
|
compClass = typeof(CompSkyfallerPawnSpawner);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class CompSkyfallerPawnSpawner : ThingComp
|
||||||
|
{
|
||||||
|
public CompProperties_SkyfallerPawnSpawner Props => (CompProperties_SkyfallerPawnSpawner)props;
|
||||||
|
|
||||||
|
public void SpawnPawn(Map map, IntVec3 position)
|
||||||
|
{
|
||||||
|
if (Props.pawnKind == null)
|
||||||
|
{
|
||||||
|
Log.Error("CompSkyfallerPawnSpawner: pawnKind is null");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 创建 Pawn
|
||||||
|
PawnGenerationRequest request = new PawnGenerationRequest(
|
||||||
|
Props.pawnKind,
|
||||||
|
faction: GetFaction(),
|
||||||
|
context: PawnGenerationContext.NonPlayer,
|
||||||
|
fixedBiologicalAge: 0,
|
||||||
|
fixedChronologicalAge: 0
|
||||||
|
);
|
||||||
|
|
||||||
|
Pawn pawn = PawnGenerator.GeneratePawn(request);
|
||||||
|
|
||||||
|
// 设置阵营关系
|
||||||
|
if (Props.spawnHostile)
|
||||||
|
{
|
||||||
|
pawn.SetFaction(Faction.OfAncientsHostile);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 生成 Pawn
|
||||||
|
GenSpawn.Spawn(pawn, position, map);
|
||||||
|
|
||||||
|
// 如果需要,设置为征召状态
|
||||||
|
if (Props.spawnDrafted && pawn.drafter != null)
|
||||||
|
{
|
||||||
|
pawn.drafter.Drafted = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 发送生成消息
|
||||||
|
Messages.Message("SkyfallerPawnLanded".Translate(pawn.LabelShortCap), pawn, MessageTypeDefOf.NeutralEvent);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Faction GetFaction()
|
||||||
|
{
|
||||||
|
if (Props.faction != null)
|
||||||
|
{
|
||||||
|
return FactionUtility.DefaultFactionFrom(Props.faction);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Props.spawnHostile)
|
||||||
|
{
|
||||||
|
return Faction.OfAncientsHostile;
|
||||||
|
}
|
||||||
|
|
||||||
|
return Faction.OfAncients;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,50 @@
|
|||||||
|
using Verse;
|
||||||
|
using RimWorld;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace WulaFallenEmpire
|
||||||
|
{
|
||||||
|
public class Skyfaller_PawnSpawner : Skyfaller
|
||||||
|
{
|
||||||
|
private CompSkyfallerPawnSpawner pawnSpawnerComp;
|
||||||
|
|
||||||
|
public override void PostPostMake()
|
||||||
|
{
|
||||||
|
base.PostPostMake();
|
||||||
|
pawnSpawnerComp = GetComp<CompSkyfallerPawnSpawner>();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void Impact()
|
||||||
|
{
|
||||||
|
// 在调用基类 Impact 之前保存位置信息
|
||||||
|
IntVec3 impactPosition = base.Position;
|
||||||
|
Map impactMap = base.Map;
|
||||||
|
|
||||||
|
// 调用基类 Impact 方法(这会处理爆炸、碎片等效果)
|
||||||
|
base.Impact();
|
||||||
|
|
||||||
|
// 生成 Pawn
|
||||||
|
if (pawnSpawnerComp != null && impactMap != null)
|
||||||
|
{
|
||||||
|
pawnSpawnerComp.SpawnPawn(impactMap, impactPosition);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 可选:重写 SpawnThings 方法以防止生成原版的内容
|
||||||
|
protected override void SpawnThings()
|
||||||
|
{
|
||||||
|
// 如果我们要生成 Pawn,可能不想生成原版的物品
|
||||||
|
// 但保留原版逻辑以防有其他内容需要生成
|
||||||
|
base.SpawnThings();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void ExposeData()
|
||||||
|
{
|
||||||
|
base.ExposeData();
|
||||||
|
if (Scribe.mode == LoadSaveMode.LoadingVars)
|
||||||
|
{
|
||||||
|
pawnSpawnerComp = GetComp<CompSkyfallerPawnSpawner>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -71,6 +71,7 @@
|
|||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="Ability\CompAbilityEffect_LaunchMultiProjectile.cs" />
|
||||||
<Compile Include="Ability\CompAbilityEffect_ResearchPrereq.cs" />
|
<Compile Include="Ability\CompAbilityEffect_ResearchPrereq.cs" />
|
||||||
<Compile Include="Ability\WULA_AbilityBombardment\CompAbilityEffect_Bombardment.cs" />
|
<Compile Include="Ability\WULA_AbilityBombardment\CompAbilityEffect_Bombardment.cs" />
|
||||||
<Compile Include="Ability\WULA_AbilityBombardment\CompProperties_AbilityBombardment.cs" />
|
<Compile Include="Ability\WULA_AbilityBombardment\CompProperties_AbilityBombardment.cs" />
|
||||||
@@ -142,6 +143,7 @@
|
|||||||
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_FloatMenuOptionProvider_SelectedPawnValid.cs" />
|
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_FloatMenuOptionProvider_SelectedPawnValid.cs" />
|
||||||
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_IsColonyMechPlayerControlled.cs" />
|
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_IsColonyMechPlayerControlled.cs" />
|
||||||
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_MechanitorUtility_CanDraftMech.cs" />
|
<Compile Include="HarmonyPatches\WULA_AutonomousMech\Patch_MechanitorUtility_CanDraftMech.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_NanoRepair.cs" />
|
<Compile Include="HediffComp\HediffCompProperties_NanoRepair.cs" />
|
||||||
<Compile Include="HediffComp\HediffCompProperties_SwitchableHediff.cs" />
|
<Compile Include="HediffComp\HediffCompProperties_SwitchableHediff.cs" />
|
||||||
@@ -220,6 +222,8 @@
|
|||||||
<Compile Include="BuildingComp\WULA_Shuttle\Dialog_ArmedShuttleTransfer.cs" />
|
<Compile Include="BuildingComp\WULA_Shuttle\Dialog_ArmedShuttleTransfer.cs" />
|
||||||
<Compile Include="BuildingComp\WULA_Shuttle\GenStep_WulaPocketSpaceSmall.cs" />
|
<Compile Include="BuildingComp\WULA_Shuttle\GenStep_WulaPocketSpaceSmall.cs" />
|
||||||
<Compile Include="BuildingComp\WULA_Shuttle\PocketSpaceThingHolder.cs" />
|
<Compile Include="BuildingComp\WULA_Shuttle\PocketSpaceThingHolder.cs" />
|
||||||
|
<Compile Include="ThingComp\WULA_SkyfallerPawnSpawner\CompProperties_SkyfallerPawnSpawner.cs" />
|
||||||
|
<Compile Include="ThingComp\WULA_SkyfallerPawnSpawner\Skyfaller_PawnSpawner.cs" />
|
||||||
<Compile Include="Utils\BezierUtil.cs" />
|
<Compile Include="Utils\BezierUtil.cs" />
|
||||||
<Compile Include="Verb\MeleeAttack_Cleave\CompCleave.cs" />
|
<Compile Include="Verb\MeleeAttack_Cleave\CompCleave.cs" />
|
||||||
<Compile Include="HarmonyPatches\Caravan_NeedsTracker_TrySatisfyPawnNeeds_Patch.cs" />
|
<Compile Include="HarmonyPatches\Caravan_NeedsTracker_TrySatisfyPawnNeeds_Patch.cs" />
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 355 B |
|
Before Width: | Height: | Size: 355 B |
|
Before Width: | Height: | Size: 355 B |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 31 KiB |