1
@@ -46,6 +46,9 @@
|
||||
<!-- 可选:指定特定的设施名称 -->
|
||||
<!-- <requiredFacility>BombardmentFacility</requiredFacility> -->
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<!-- 战舰编队 -->
|
||||
@@ -94,6 +97,9 @@
|
||||
<!-- 可选:指定特定的设施名称 -->
|
||||
<!-- <requiredFacility>BombardmentFacility</requiredFacility> -->
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<!-- 防御编队 -->
|
||||
@@ -142,6 +148,9 @@
|
||||
<!-- 可选:指定特定的设施名称 -->
|
||||
<!-- <requiredFacility>BombardmentFacility</requiredFacility> -->
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -170,6 +179,9 @@
|
||||
|
||||
<comps>
|
||||
<li Class="WulaFallenEmpire.CompProperties_DestroyFlyOverByFacilities" />
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
|
||||
@@ -218,6 +230,9 @@
|
||||
<showSectorPreview>true</showSectorPreview>
|
||||
<sectorPreviewColor>(0.3,0.7,1.0,0.3)</sectorPreviewColor>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
|
||||
@@ -269,6 +284,9 @@
|
||||
<showSectorPreview>true</showSectorPreview>
|
||||
<sectorPreviewColor>(0.3,0.7,1.0,0.3)</sectorPreviewColor>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -326,6 +344,9 @@
|
||||
<!-- 预览配置 -->
|
||||
<showSectorPreview>false</showSectorPreview>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -381,6 +402,9 @@
|
||||
<requiredFacility>HarborFacility</requiredFacility>
|
||||
<facilityNotFoundMessage>需要拥有<color=#BD952F><i>机库</i></color>设施的战舰在地图上才能发起空袭</facilityNotFoundMessage>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -447,6 +471,9 @@
|
||||
<requiredFacility>HarborFacility</requiredFacility>
|
||||
<facilityNotFoundMessage>需要拥有<color=#BD952F><i>机库</i></color>设施的战舰在地图上才能发起空袭</facilityNotFoundMessage>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -513,6 +540,9 @@
|
||||
<requiredFacility>HarborFacility</requiredFacility>
|
||||
<facilityNotFoundMessage>需要拥有<color=#BD952F><i>机库</i></color>设施的战舰在地图上才能发起空袭</facilityNotFoundMessage>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -579,6 +609,9 @@
|
||||
<requiredFacility>HarborFacility</requiredFacility>
|
||||
<facilityNotFoundMessage>需要拥有<color=#BD952F><i>机库</i></color>设施的战舰在地图上才能发起空袭</facilityNotFoundMessage>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -645,6 +678,9 @@
|
||||
<requiredFacility>HarborFacility</requiredFacility>
|
||||
<facilityNotFoundMessage>需要拥有<color=#BD952F><i>机库</i></color>设施的战舰在地图上才能发起空袭</facilityNotFoundMessage>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -711,6 +747,9 @@
|
||||
<requiredFacility>HarborFacility</requiredFacility>
|
||||
<facilityNotFoundMessage>需要拥有<color=#BD952F><i>机库</i></color>设施的战舰在地图上才能发起空袭</facilityNotFoundMessage>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
|
||||
@@ -762,6 +801,9 @@
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityResearchPrereq">
|
||||
<requiredResearch>WULA_Firepower_Minigun_Technology</requiredResearch>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -812,6 +854,9 @@
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityResearchPrereq">
|
||||
<requiredResearch>WULA_Firepower_Cannon_Technology</requiredResearch>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -853,6 +898,9 @@
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityResearchPrereq">
|
||||
<requiredResearch>WULA_Firepower_Cannon_Technology</requiredResearch>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -895,6 +943,9 @@
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityResearchPrereq">
|
||||
<requiredResearch>WULA_Firepower_EnergyLance_Technology</requiredResearch>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -936,6 +987,9 @@
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityResearchPrereq">
|
||||
<requiredResearch>WULA_Firepower_EnergyLance_Technology</requiredResearch>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -985,6 +1039,9 @@
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityResearchPrereq">
|
||||
<requiredResearch>WULA_Firepower_Primary_Cannon_Technology</requiredResearch>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
<AbilityDef>
|
||||
@@ -1026,6 +1083,9 @@
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityResearchPrereq">
|
||||
<requiredResearch>WULA_Firepower_Primary_Cannon_Technology</requiredResearch>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AbilityRequiresNonHostility">
|
||||
<factionDef>Wula_PIA_Legion_Faction</factionDef>
|
||||
</li>
|
||||
</comps>
|
||||
</AbilityDef>
|
||||
</Defs>
|
||||
@@ -135,18 +135,6 @@
|
||||
<disallowedRaidAgeRestrictions>
|
||||
<li MayRequire="Ludeon.RimWorld.Biotech">Children</li>
|
||||
</disallowedRaidAgeRestrictions>
|
||||
<permanentEnemyToEveryoneExcept>
|
||||
<li>WULA_Awakened_Synth</li>
|
||||
<li>OutlanderCivil</li>
|
||||
<li>TribeCivil</li>
|
||||
<li>PlayerTribe</li>
|
||||
<li>PlayerColony</li>
|
||||
<li>Ancients</li>
|
||||
<li MayRequire="Ludeon.RimWorld.Ideology">Beggars</li>
|
||||
<li MayRequire="Ludeon.RimWorld.Anomaly">ResearchExpedition</li>
|
||||
<li MayRequire="Ludeon.RimWorld.Odyssey">GravshipCrew</li>
|
||||
<li MayRequire="Ludeon.RimWorld.Odyssey">TradersGuild</li>
|
||||
</permanentEnemyToEveryoneExcept>
|
||||
<backstoryCategories>
|
||||
<li>Wula_Backstory_Categories</li>
|
||||
</backstoryCategories>
|
||||
|
||||
@@ -1,144 +1,43 @@
|
||||
<Defs>
|
||||
<PrefabDef>
|
||||
<defName>WULA_Shuttle_Prefab</defName> <!-- rename -->
|
||||
<size>(13,13)</size>
|
||||
<defName>WULA_ArmedShuttleWithPocket_SP_Prefab</defName> <!-- rename -->
|
||||
<size>(9,13)</size>
|
||||
<things>
|
||||
<Table1x2c>
|
||||
<position>(10, 0, 2)</position>
|
||||
<relativeRotation>Clockwise</relativeRotation>
|
||||
<stuff>Steel</stuff>
|
||||
<quality>Normal</quality>
|
||||
</Table1x2c>
|
||||
<Armchair>
|
||||
<position>(6, 0, 2)</position>
|
||||
<relativeRotation>Opposite</relativeRotation>
|
||||
<stuff>Cloth</stuff>
|
||||
<quality>Normal</quality>
|
||||
</Armchair>
|
||||
<WULA_Charging_Station_Synth>
|
||||
<positions>
|
||||
<li>(1, 0, 1)</li>
|
||||
<li>(1, 0, 3)</li>
|
||||
<li>(1, 0, 5)</li>
|
||||
</positions>
|
||||
<relativeRotation>Clockwise</relativeRotation>
|
||||
<quality>Normal</quality>
|
||||
</WULA_Charging_Station_Synth>
|
||||
<ChessTable>
|
||||
<position>(11, 0, 5)</position>
|
||||
<stuff>Steel</stuff>
|
||||
<quality>Normal</quality>
|
||||
</ChessTable>
|
||||
<WulaDoor>
|
||||
<rects>
|
||||
<li>(3,1,3,1)</li>
|
||||
<li>(5,2,5,2)</li>
|
||||
<li>(3,3,3,3)</li>
|
||||
<li>(3,5,3,5)</li>
|
||||
<li>(9,6,9,6)</li>
|
||||
<li>(3,7,3,7)</li>
|
||||
<li>(3,9,3,9)</li>
|
||||
<li>(3,11,3,11)</li>
|
||||
</rects>
|
||||
<relativeRotation>Clockwise</relativeRotation>
|
||||
</WulaDoor>
|
||||
<WulaDoor>
|
||||
<position>(7, 0, 9)</position>
|
||||
</WulaDoor>
|
||||
<Barricade>
|
||||
<rects>
|
||||
<li>(5,5,6,5)</li>
|
||||
<li>(5,6,5,7)</li>
|
||||
<li>(7,6,7,7)</li>
|
||||
<li>(6,7,6,7)</li>
|
||||
</rects>
|
||||
<stuff>Steel</stuff>
|
||||
</Barricade>
|
||||
<Barricade>
|
||||
<position>(7, 0, 5)</position>
|
||||
<stuff>Steel</stuff>
|
||||
<hp>278</hp>
|
||||
</Barricade>
|
||||
<DiningChair>
|
||||
<position>(11, 0, 4)</position>
|
||||
<stuff>Steel</stuff>
|
||||
<quality>Normal</quality>
|
||||
</DiningChair>
|
||||
<DiningChair>
|
||||
<position>(11, 0, 6)</position>
|
||||
<relativeRotation>Opposite</relativeRotation>
|
||||
<stuff>Steel</stuff>
|
||||
<quality>Normal</quality>
|
||||
</DiningChair>
|
||||
<Bed>
|
||||
<positions>
|
||||
<li>(1, 0, 7)</li>
|
||||
<li>(1, 0, 9)</li>
|
||||
<li>(1, 0, 11)</li>
|
||||
</positions>
|
||||
<relativeRotation>Clockwise</relativeRotation>
|
||||
<stuff>Steel</stuff>
|
||||
<quality>Normal</quality>
|
||||
</Bed>
|
||||
<WulaWall>
|
||||
<rects>
|
||||
<li>(0,0,12,0)</li>
|
||||
<li>(0,1,0,12)</li>
|
||||
<li>(5,1,5,1)</li>
|
||||
<li>(7,1,7,3)</li>
|
||||
<li>(12,1,12,12)</li>
|
||||
<li>(1,2,3,2)</li>
|
||||
<li>(5,3,6,3)</li>
|
||||
<li>(8,3,8,3)</li>
|
||||
<li>(1,4,3,4)</li>
|
||||
<li>(9,4,9,5)</li>
|
||||
<li>(1,6,3,6)</li>
|
||||
<li>(9,7,11,7)</li>
|
||||
<li>(1,8,3,8)</li>
|
||||
<li>(9,8,9,9)</li>
|
||||
<li>(5,9,6,9)</li>
|
||||
<li>(8,9,8,9)</li>
|
||||
<li>(1,10,3,10)</li>
|
||||
<li>(5,10,5,12)</li>
|
||||
<li>(1,12,4,12)</li>
|
||||
<li>(6,12,11,12)</li>
|
||||
</rects>
|
||||
<stuff>Steel</stuff>
|
||||
</WulaWall>
|
||||
<FlatscreenTelevision>
|
||||
<position>(8, 0, 2)</position>
|
||||
<relativeRotation>Clockwise</relativeRotation>
|
||||
</FlatscreenTelevision>
|
||||
<Shelf>
|
||||
<position>(10, 0, 8)</position>
|
||||
<stuff>Steel</stuff>
|
||||
</Shelf>
|
||||
<Shelf>
|
||||
<position>(6, 0, 11)</position>
|
||||
<relativeRotation>Clockwise</relativeRotation>
|
||||
<stuff>Steel</stuff>
|
||||
</Shelf>
|
||||
<Shelf>
|
||||
<position>(11, 0, 10)</position>
|
||||
<relativeRotation>Counterclockwise</relativeRotation>
|
||||
<stuff>Steel</stuff>
|
||||
</Shelf>
|
||||
<Shelf>
|
||||
<position>(9, 0, 11)</position>
|
||||
<relativeRotation>Opposite</relativeRotation>
|
||||
<stuff>Steel</stuff>
|
||||
</Shelf>
|
||||
<Couch>
|
||||
<position>(10, 0, 1)</position>
|
||||
<stuff>Cloth</stuff>
|
||||
<quality>Normal</quality>
|
||||
</Couch>
|
||||
<Couch>
|
||||
<position>(11, 0, 3)</position>
|
||||
<relativeRotation>Opposite</relativeRotation>
|
||||
<stuff>Cloth</stuff>
|
||||
<quality>Normal</quality>
|
||||
</Couch>
|
||||
<WULA_ArmedShuttleWithPocket>
|
||||
<position>(4, 0, 6)</position>
|
||||
</WULA_ArmedShuttleWithPocket>
|
||||
</things>
|
||||
</PrefabDef>
|
||||
<PrefabDef>
|
||||
<defName>WULA_Shuttle_Prefab</defName> <!-- rename -->
|
||||
<size>(25,25)</size>
|
||||
<things>
|
||||
<FloodLight>
|
||||
<rects>
|
||||
<li>(1,1,1,1)</li>
|
||||
<li>(23,1,23,1)</li>
|
||||
<li>(1,23,1,23)</li>
|
||||
<li>(23,23,23,23)</li>
|
||||
</rects>
|
||||
</FloodLight>
|
||||
<WulaWall_Inner>
|
||||
<rects>
|
||||
<li>(0,0,24,0)</li>
|
||||
<li>(0,1,0,24)</li>
|
||||
<li>(24,1,24,24)</li>
|
||||
<li>(1,24,23,24)</li>
|
||||
</rects>
|
||||
</WulaWall_Inner>
|
||||
<WULA_PocketMapExit>
|
||||
<position>(12, 0, 12)</position>
|
||||
</WULA_PocketMapExit>
|
||||
</things>
|
||||
<terrain>
|
||||
<WulaFloor>
|
||||
<rects>
|
||||
<li>(0,0,24,24)</li>
|
||||
</rects>
|
||||
</WulaFloor>
|
||||
</terrain>
|
||||
</PrefabDef>
|
||||
</Defs>
|
||||
@@ -53,7 +53,7 @@
|
||||
<siteIconPath>Things/Building/Natural/Hive/HiveC</siteIconPath>
|
||||
<expandingIconPath>Things/Building/Natural/Hive/HiveC</expandingIconPath>
|
||||
<storeAs>site</storeAs>
|
||||
<faction>$siteFaction</faction>
|
||||
<overrideFaction>$siteFaction</overrideFaction>
|
||||
<distance>
|
||||
<min>5</min>
|
||||
<max>10</max>
|
||||
@@ -125,6 +125,7 @@
|
||||
<size>(44, 1, 44)</size>
|
||||
<isPart>true</isPart>
|
||||
<commonality>0</commonality>
|
||||
<faction>MapFaction</faction>
|
||||
<pawns>
|
||||
<li>
|
||||
<key>(21, 0, 24)</key>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<rootSelectionWeight>0</rootSelectionWeight>
|
||||
<expireDaysRange>1</expireDaysRange>
|
||||
<autoAccept>true</autoAccept>
|
||||
<sendAvailableLetter>false</sendAvailableLetter>
|
||||
<sendAvailableLetter>true</sendAvailableLetter>
|
||||
<defaultChallengeRating>4</defaultChallengeRating> <!-- 挑战等级(星级) -->
|
||||
<isRootSpecial>true</isRootSpecial> <!-- 特殊任务 -->
|
||||
|
||||
@@ -23,14 +23,373 @@
|
||||
<nodes>
|
||||
<li Class="QuestNode_GetMap"/>
|
||||
|
||||
<li Class="WulaFallenEmpire.QuestNode_SpawnPrefabSkyfallerCaller">
|
||||
<thingDef>WULA_Sky_Lock</thingDef>
|
||||
<faction>AncientsHostile</faction>
|
||||
<spawnCount>4</spawnCount>
|
||||
<sendMessageOnSuccess>false</sendMessageOnSuccess>
|
||||
<sendMessageOnFailure>false</sendMessageOnFailure>
|
||||
<!-- 产生超链接 -->
|
||||
<li Class="WulaFallenEmpire.QuestNode_Hyperlinks">
|
||||
<thingDefs>
|
||||
<li>Wula_Psi_Titan</li>
|
||||
<li>Wula_AI_Rocket_Panzer</li>
|
||||
<li>Wula_AI_Heavy_Panzer</li>
|
||||
<li>WULA_Sky_Lock</li>
|
||||
</thingDefs>
|
||||
<factionDefs>
|
||||
<li>Wula_PIA_Legion_Faction</li>
|
||||
</factionDefs>
|
||||
</li>
|
||||
|
||||
<li Class="QuestEditor_Library.QuestNode_RandomCustomMap">
|
||||
<datas>
|
||||
<li>
|
||||
<key>Wula_PsiTitan_Boss_Map</key>
|
||||
<value>1</value>
|
||||
</li>
|
||||
</datas>
|
||||
<buffer>5</buffer>
|
||||
<bufferMin>10</bufferMin>
|
||||
<siteIconPath>Things/Building/Natural/Hive/HiveC</siteIconPath>
|
||||
<expandingIconPath>Things/Building/Natural/Hive/HiveC</expandingIconPath>
|
||||
<storeAs>site</storeAs>
|
||||
<overrideFaction>AncientsHostile</overrideFaction>
|
||||
<disdestroyBecauseOfNoColonist>true</disdestroyBecauseOfNoColonist>
|
||||
<distance>
|
||||
<min>5</min>
|
||||
<max>10</max>
|
||||
</distance>
|
||||
<blacklist />
|
||||
</li>
|
||||
|
||||
<!-- 灵能泰坦被击毁··· -->
|
||||
<li Class="QuestNode_Signal">
|
||||
<inSignal>PsiTitan.0.Destroyed</inSignal>
|
||||
<node Class="QuestNode_End">
|
||||
<outcome>Success</outcome>
|
||||
<sendStandardLetter>true</sendStandardLetter>
|
||||
</node>
|
||||
</li>
|
||||
</nodes>
|
||||
</root>
|
||||
</QuestScriptDef>
|
||||
<QuestEditor_Library.CustomMapDataDef>
|
||||
<defName>Wula_PsiTitan_Boss_Map</defName>
|
||||
<label>发现灵能泰坦的地区</label>
|
||||
<fogged>true</fogged>
|
||||
<size>(128, 1, 128)</size>
|
||||
<isPart>true</isPart>
|
||||
<commonality>0</commonality>
|
||||
<faction>MapFaction</faction>
|
||||
<pawns>
|
||||
<li>
|
||||
<key>(65, 0, 68)</key>
|
||||
<value>
|
||||
<li>
|
||||
<dataName>PsiTitan</dataName>
|
||||
<kind>Wula_Psi_Titan</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
</value>
|
||||
</li>
|
||||
<li>
|
||||
<key>(19, 0, 16)</key>
|
||||
<value>
|
||||
<li Class="QuestEditor_Library.PawnSpawnData_Random">
|
||||
<dataName>AIHeavyPanzer</dataName>
|
||||
<count>1</count>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
<datas>
|
||||
<li>
|
||||
<dataName>AIPanzer</dataName>
|
||||
<kind>Wula_AI_Heavy_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
<li>
|
||||
<dataName>AIPanzerRocket</dataName>
|
||||
<kind>Wula_AI_Rocket_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
</datas>
|
||||
</li>
|
||||
<li Class="QuestEditor_Library.PawnSpawnData_Random">
|
||||
<dataName>AIHeavyPanzer</dataName>
|
||||
<count>1</count>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
<datas>
|
||||
<li>
|
||||
<dataName>AIPanzer</dataName>
|
||||
<kind>Wula_AI_Heavy_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
<li>
|
||||
<dataName>AIPanzerRocket</dataName>
|
||||
<kind>Wula_AI_Rocket_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
</datas>
|
||||
</li>
|
||||
</value>
|
||||
</li>
|
||||
<li>
|
||||
<key>(107, 0, 15)</key>
|
||||
<value>
|
||||
<li Class="QuestEditor_Library.PawnSpawnData_Random">
|
||||
<dataName>AIHeavyPanzer</dataName>
|
||||
<count>1</count>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
<datas>
|
||||
<li>
|
||||
<dataName>AIPanzer</dataName>
|
||||
<kind>Wula_AI_Heavy_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
<li>
|
||||
<dataName>AIPanzerRocket</dataName>
|
||||
<kind>Wula_AI_Rocket_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
</datas>
|
||||
</li>
|
||||
<li Class="QuestEditor_Library.PawnSpawnData_Random">
|
||||
<dataName>AIHeavyPanzer</dataName>
|
||||
<count>1</count>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
<datas>
|
||||
<li>
|
||||
<dataName>AIPanzer</dataName>
|
||||
<kind>Wula_AI_Heavy_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
<li>
|
||||
<dataName>AIPanzerRocket</dataName>
|
||||
<kind>Wula_AI_Rocket_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
</datas>
|
||||
</li>
|
||||
</value>
|
||||
</li>
|
||||
<li>
|
||||
<key>(102, 0, 112)</key>
|
||||
<value>
|
||||
<li Class="QuestEditor_Library.PawnSpawnData_Random">
|
||||
<dataName>AIHeavyPanzer</dataName>
|
||||
<count>1</count>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
<datas>
|
||||
<li>
|
||||
<dataName>AIPanzer</dataName>
|
||||
<kind>Wula_AI_Heavy_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
<li>
|
||||
<dataName>AIPanzerRocket</dataName>
|
||||
<kind>Wula_AI_Rocket_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
</datas>
|
||||
</li>
|
||||
<li Class="QuestEditor_Library.PawnSpawnData_Random">
|
||||
<dataName>AIHeavyPanzer</dataName>
|
||||
<count>1</count>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
<datas>
|
||||
<li>
|
||||
<dataName>AIPanzer</dataName>
|
||||
<kind>Wula_AI_Heavy_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
<li>
|
||||
<dataName>AIPanzerRocket</dataName>
|
||||
<kind>Wula_AI_Rocket_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
</datas>
|
||||
</li>
|
||||
</value>
|
||||
</li>
|
||||
<li>
|
||||
<key>(12, 0, 115)</key>
|
||||
<value>
|
||||
<li Class="QuestEditor_Library.PawnSpawnData_Random">
|
||||
<dataName>AIHeavyPanzer</dataName>
|
||||
<count>1</count>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
<datas>
|
||||
<li>
|
||||
<dataName>AIPanzer</dataName>
|
||||
<kind>Wula_AI_Heavy_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
<li>
|
||||
<dataName>AIPanzerRocket</dataName>
|
||||
<kind>Wula_AI_Rocket_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
</datas>
|
||||
</li>
|
||||
<li Class="QuestEditor_Library.PawnSpawnData_Random">
|
||||
<dataName>AIHeavyPanzer</dataName>
|
||||
<count>1</count>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
<datas>
|
||||
<li>
|
||||
<dataName>AIPanzer</dataName>
|
||||
<kind>Wula_AI_Heavy_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
<li>
|
||||
<dataName>AIPanzerRocket</dataName>
|
||||
<kind>Wula_AI_Rocket_Panzer</kind>
|
||||
<enableLord>true</enableLord>
|
||||
<lordDataName>PsiTitanGroup</lordDataName>
|
||||
<count>1~2</count>
|
||||
<faction>AncientsHostile</faction>
|
||||
<duty>DefendBase</duty>
|
||||
<spawnType>MapGeneration</spawnType>
|
||||
</li>
|
||||
</datas>
|
||||
</li>
|
||||
</value>
|
||||
</li>
|
||||
</pawns>
|
||||
<thingDatas>
|
||||
<li>
|
||||
<def>WULA_Sky_Lock</def>
|
||||
<faction>PlayerColony</faction>
|
||||
<allRect>
|
||||
<li>(11,11,11,11)</li>
|
||||
<li>(116,7,116,7)</li>
|
||||
<li>(3,124,3,124)</li>
|
||||
<li>(107,118,107,118)</li>
|
||||
</allRect>
|
||||
</li>
|
||||
<li>
|
||||
<def>AncientTunnelerHusk</def>
|
||||
<faction>PlayerColony</faction>
|
||||
<allRect>
|
||||
<li>(38,49,38,49)</li>
|
||||
<li>(70,44,70,44)</li>
|
||||
<li>(94,35,94,35)</li>
|
||||
</allRect>
|
||||
</li>
|
||||
<li>
|
||||
<def>AncientTank</def>
|
||||
<faction>PlayerColony</faction>
|
||||
<allRect>
|
||||
<li>(27,24,27,24)</li>
|
||||
<li>(26,83,26,83)</li>
|
||||
<li>(87,74,87,74)</li>
|
||||
</allRect>
|
||||
</li>
|
||||
<li>
|
||||
<def>AncientMiniWarwalkerRemains</def>
|
||||
<faction>PlayerColony</faction>
|
||||
<allRect>
|
||||
<li>(84,28,84,28)</li>
|
||||
<li>(94,52,94,52)</li>
|
||||
</allRect>
|
||||
</li>
|
||||
<li>
|
||||
<def>ShipChunk</def>
|
||||
<faction>PlayerColony</faction>
|
||||
<allRect>
|
||||
<li>(56,24,56,24)</li>
|
||||
<li>(57,27,57,27)</li>
|
||||
<li>(51,38,51,38)</li>
|
||||
<li>(57,30,57,30)</li>
|
||||
<li>(68,30,68,30)</li>
|
||||
<li>(42,62,42,62)</li>
|
||||
<li>(53,102,53,102)</li>
|
||||
<li>(75,104,75,104)</li>
|
||||
<li>(87,100,87,100)</li>
|
||||
<li>(104,92,104,92)</li>
|
||||
</allRect>
|
||||
</li>
|
||||
<li>
|
||||
<def>AncientAPC</def>
|
||||
<faction>PlayerColony</faction>
|
||||
<allRect>
|
||||
<li>(92,67,92,67)</li>
|
||||
<li>(105,57,105,57)</li>
|
||||
</allRect>
|
||||
</li>
|
||||
</thingDatas>
|
||||
</QuestEditor_Library.CustomMapDataDef>
|
||||
</Defs>
|
||||
@@ -247,6 +247,17 @@
|
||||
<li>WULA_Colony_License_LV3_Technology</li>
|
||||
</prerequisites>
|
||||
</ResearchProjectDef>
|
||||
<ResearchProjectDef ParentName="WULAtechBase">
|
||||
<defName>WULA_ArmedShuttle_Technology</defName>
|
||||
<label>武装穿梭机调配许可</label>
|
||||
<description>允许殖民地呼叫一艘CVe-3"渡鸦"武装穿梭机,其拥有巨大的货仓和一个内部折叠的生活区,因此载重量惊人且可以在内部活动。它同时还拥有一面高反射概率的反射盾,可以抵挡大部分射弹。</description>
|
||||
<baseCost>3000</baseCost>
|
||||
<researchViewX>9.00</researchViewX>
|
||||
<researchViewY>6.20</researchViewY>
|
||||
<prerequisites>
|
||||
<li>WULA_Colony_License_LV3_Technology</li>
|
||||
</prerequisites>
|
||||
</ResearchProjectDef>
|
||||
|
||||
<!-- 炮击 -->
|
||||
<ResearchProjectDef ParentName="WULAtechBase">
|
||||
|
||||
@@ -458,12 +458,12 @@
|
||||
</comps>
|
||||
</ThingDef>
|
||||
|
||||
<!-- 陆行舰 -->
|
||||
<!-- 灵能泰坦 -->
|
||||
<ThingDef ParentName="BuildingBase">
|
||||
<defName>Wula_Psi_Titan_Cleanzone</defName>
|
||||
<label>PAt-6"灵能泰坦"</label>
|
||||
<description>清理出一块场地并准备好资源,使得乌拉帝国母舰可以向此处投放大型战争机械。\n\n由乌拉帝国国教所主持开发的重型灵能机械体,以折跃优雅地穿梭于炮火间,并用强大的护盾抵挡敌方射弹侵袭。该机体的内部镌刻了无数的术式环路,这使其就像一个行走的灵能发射器,可以驱使各种强大的灵能能力。</description>
|
||||
<uiIconPath>Wula/Things/Wula_Mech_Mobile_Factory/Wula_Mech_Mobile_Factory_Incoming</uiIconPath>
|
||||
<uiIconPath>Wula/Things/Wula_Psi_Titan/Wula_Psi_Titan_Incoming</uiIconPath>
|
||||
<minifiedDef>MinifiedThing</minifiedDef>
|
||||
<tickerType>Normal</tickerType>
|
||||
<tradeability>None</tradeability>
|
||||
@@ -516,7 +516,7 @@
|
||||
<placeWorkers>
|
||||
<li>WulaFallenEmpire.PlaceWorker_CustomRadius</li>
|
||||
</placeWorkers>
|
||||
<designationCategory>WULA_Buildings</designationCategory>
|
||||
<!-- <designationCategory>WULA_Buildings</designationCategory> -->
|
||||
<comps>
|
||||
<li Class="WulaFallenEmpire.CompProperties_SkyfallerCaller">
|
||||
<skyfallerDef>Wula_Psi_Titan_Incoming</skyfallerDef> <!-- 替换为您想要的Skyfaller类型 -->
|
||||
@@ -533,7 +533,7 @@
|
||||
<size>(1,1)</size>
|
||||
<thingClass>WulaFallenEmpire.Skyfaller_PawnSpawner</thingClass>
|
||||
<graphicData>
|
||||
<texPath>Wula/Things/Wula_Mech_Mobile_Factory/Wula_Mech_Mobile_Factory_Incoming</texPath>
|
||||
<texPath>Wula/Things/Wula_Psi_Titan/Wula_Psi_Titan_Incoming</texPath>
|
||||
<graphicClass>Graphic_Single</graphicClass>
|
||||
<shaderType>CutoutFlying</shaderType>
|
||||
<drawSize>(9,9)</drawSize>
|
||||
|
||||
@@ -664,11 +664,100 @@
|
||||
<description>什么?这是个记录数量用的thingdef,你不应该在任何场合下看到这个。</description>
|
||||
<thingClass>Thing</thingClass>
|
||||
</ThingDef>
|
||||
|
||||
<!-- 杂项 -->
|
||||
<ThingDef ParentName="TableGatherSpotBase">
|
||||
<defName>WULA_Table1x2c</defName>
|
||||
<label>乌拉帝国桌子 (1x2)</label>
|
||||
<description>乌拉帝国的桌子</description>
|
||||
<graphicData>
|
||||
<texPath>Wula/Building/WULA_Table1x2c</texPath>
|
||||
<graphicClass>Graphic_Multi</graphicClass>
|
||||
<shaderType>CutoutComplex</shaderType>
|
||||
<drawSize>(2,2)</drawSize>
|
||||
<shadowData>
|
||||
<volume>(0.85, 0.5, 0.5)</volume>
|
||||
<offset>(0,0,-0.1)</offset>
|
||||
</shadowData>
|
||||
</graphicData>
|
||||
<uiIconScale>0.8</uiIconScale>
|
||||
<castEdgeShadows>false</castEdgeShadows>
|
||||
<staticSunShadowHeight>0</staticSunShadowHeight>
|
||||
<statBases>
|
||||
<MaxHitPoints>75</MaxHitPoints>
|
||||
<WorkToBuild>750</WorkToBuild>
|
||||
<Mass>5</Mass>
|
||||
<Flammability>1.0</Flammability>
|
||||
<Beauty>0.5</Beauty>
|
||||
<StyleDominance MayRequire="Ludeon.RimWorld.Ideology">5</StyleDominance>
|
||||
</statBases>
|
||||
<costStuffCount>20</costStuffCount>
|
||||
<stuffCategories Inherit="False">
|
||||
<li>Stony</li>
|
||||
<li>Metallic</li>
|
||||
</stuffCategories>
|
||||
<researchPrerequisites>
|
||||
<li>WULA_Colony_License_LV1_Technology</li>
|
||||
</researchPrerequisites>
|
||||
<size>(1,2)</size>
|
||||
<terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
|
||||
<designationCategory>WULA_Buildings</designationCategory>
|
||||
<comps>
|
||||
<li Class="CompProperties_Glower">
|
||||
<glowRadius>3</glowRadius>
|
||||
<glowColor>(120,240,252,0)</glowColor>
|
||||
</li>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
<ThingDef ParentName="TableGatherSpotBase">
|
||||
<defName>WULA_Table2x4c</defName>
|
||||
<label>乌拉帝国桌子 (2x4)</label>
|
||||
<description>乌拉帝国的桌子</description>
|
||||
<graphicData>
|
||||
<texPath>Wula/Building/WULA_Table1x2c</texPath>
|
||||
<graphicClass>Graphic_Multi</graphicClass>
|
||||
<shaderType>CutoutComplex</shaderType>
|
||||
<drawSize>(4,4)</drawSize>
|
||||
<shadowData>
|
||||
<volume>(0.85, 0.5, 0.5)</volume>
|
||||
<offset>(0,0,-0.1)</offset>
|
||||
</shadowData>
|
||||
</graphicData>
|
||||
<uiIconScale>0.8</uiIconScale>
|
||||
<castEdgeShadows>false</castEdgeShadows>
|
||||
<staticSunShadowHeight>0</staticSunShadowHeight>
|
||||
<statBases>
|
||||
<MaxHitPoints>75</MaxHitPoints>
|
||||
<WorkToBuild>750</WorkToBuild>
|
||||
<Mass>5</Mass>
|
||||
<Flammability>1.0</Flammability>
|
||||
<Beauty>0.5</Beauty>
|
||||
<StyleDominance MayRequire="Ludeon.RimWorld.Ideology">5</StyleDominance>
|
||||
</statBases>
|
||||
<costStuffCount>20</costStuffCount>
|
||||
<stuffCategories Inherit="False">
|
||||
<li>Stony</li>
|
||||
<li>Metallic</li>
|
||||
</stuffCategories>
|
||||
<researchPrerequisites>
|
||||
<li>WULA_Colony_License_LV1_Technology</li>
|
||||
</researchPrerequisites>
|
||||
<size>(2,4)</size>
|
||||
<terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
|
||||
<designationCategory>WULA_Buildings</designationCategory>
|
||||
<comps>
|
||||
<li Class="CompProperties_Glower">
|
||||
<glowRadius>3</glowRadius>
|
||||
<glowColor>(120,240,252,0)</glowColor>
|
||||
</li>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
|
||||
<!-- 场景 -->
|
||||
<ThingDef ParentName="BuildingBase">
|
||||
<defName>WULA_Sky_Lock</defName>
|
||||
<label>天锁</label>
|
||||
<description>天锁</description>
|
||||
<description>天锁是纯粹的灵能造物,PAt-6"灵能泰坦"可以将伤害转移给天锁。</description>
|
||||
<thingClass>WulaFallenEmpire.Building_ExtraGraphics</thingClass>
|
||||
<preventDroppingThingsOn>true</preventDroppingThingsOn>
|
||||
<altitudeLayer>MetaOverlays</altitudeLayer>
|
||||
@@ -748,6 +837,11 @@
|
||||
</li>
|
||||
</modExtensions>
|
||||
<comps>
|
||||
<li Class="WulaFallenEmpire.CompProperties_FactionSetter">
|
||||
<factionDef>AncientsHostile</factionDef>
|
||||
<usePlayerFactionIfNull>true</usePlayerFactionIfNull>
|
||||
<overrideExistingFaction>false</overrideExistingFaction>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AreaShield">
|
||||
<radius>7</radius>
|
||||
<baseHitPoints>20</baseHitPoints>
|
||||
@@ -776,7 +870,6 @@
|
||||
</li>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
|
||||
<ThingDef ParentName="MechBuildingBase">
|
||||
<defName>WULA_MechAssembler</defName>
|
||||
<label>乌拉帝国自动装配场</label>
|
||||
|
||||
@@ -1,53 +1,163 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<Defs>
|
||||
<ThingDef ParentName="BuildingBase">
|
||||
<defName>WULA_ArmedShuttle</defName>
|
||||
<label>CVe-3l"灰鸦"</label>
|
||||
<description>乌拉帝国所使用的大气内专用近地穿梭机。配备集成能量发生器投射暗物质护盾。并且装载一门近防炮武装保护帝国资产。</description>
|
||||
<thingClass>WulaFallenEmpire.Building_ArmedShuttle</thingClass>
|
||||
<defName>WULA_ArmedShuttleWithPocket_Cleanzone</defName>
|
||||
<label>CVe-3"渡鸦"</label>
|
||||
<description>清理出一块场地并准备好资源,使得乌拉帝国母舰可以向此处派遣一艘穿梭机。\n\nCVe-3"渡鸦"是乌拉帝国用于在舰队和地表构建联系的特种穿梭机,拥有巨大的货仓和一个内部折叠的生活区,因此载重量惊人且可以在内部活动。它同时还拥有一面高反射概率的反射盾,可以抵挡大部分射弹。</description>
|
||||
<uiIconPath>Wula/Building/WULA_ArmedShuttle_Moving</uiIconPath>
|
||||
<tickerType>Normal</tickerType>
|
||||
<minifiedDef>MinifiedThing</minifiedDef>
|
||||
<graphicData>
|
||||
<texPath>Wula/Building/WULA_Dropping_Building_Cleanzone_Plus</texPath>
|
||||
<graphicClass>Graphic_Multi</graphicClass>
|
||||
<drawSize>(9,13)</drawSize>
|
||||
<damageData>
|
||||
<enabled>false</enabled>
|
||||
</damageData>
|
||||
</graphicData>
|
||||
<thingCategories Inherit="False">
|
||||
<li>BuildingsMisc</li>
|
||||
</thingCategories>
|
||||
<rotatable>false</rotatable>
|
||||
<neverMultiSelect>false</neverMultiSelect>
|
||||
<blockLight>false</blockLight>
|
||||
<holdsRoof>false</holdsRoof>
|
||||
<coversFloor>false</coversFloor>
|
||||
<blockWind>false</blockWind>
|
||||
<altitudeLayer>BuildingOnTop</altitudeLayer>
|
||||
<passability>PassThroughOnly</passability>
|
||||
<designationCategory>WULA_Buildings</designationCategory>
|
||||
<pathCost>0</pathCost>
|
||||
<castEdgeShadows>false</castEdgeShadows>
|
||||
<useStuffTerrainAffordance>false</useStuffTerrainAffordance>
|
||||
<staticSunShadowHeight Inherit="False" IsNull="True" />
|
||||
<fillPercent>0</fillPercent>
|
||||
<canOverlapZones>false</canOverlapZones>
|
||||
<terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
|
||||
<statBases>
|
||||
<MaxHitPoints>1</MaxHitPoints>
|
||||
<WorkToBuild>0</WorkToBuild>
|
||||
<Mass>1</Mass>
|
||||
<Flammability>0</Flammability>
|
||||
</statBases>
|
||||
<size>(9,13)</size>
|
||||
<constructionSkillPrerequisite>0</constructionSkillPrerequisite>
|
||||
<resourcesFractionWhenDeconstructed>1</resourcesFractionWhenDeconstructed>
|
||||
<stuffCategories Inherit="False" />
|
||||
<researchPrerequisites Inherit="False">
|
||||
<li>WULA_ArmedShuttle_Technology</li>
|
||||
</researchPrerequisites>
|
||||
<costStuffCount>0</costStuffCount>
|
||||
<costList>
|
||||
<WULA_Alloy>500</WULA_Alloy>
|
||||
<WULA_Neutronium>150</WULA_Neutronium>
|
||||
<WULA_Dark_Matter_Item>25</WULA_Dark_Matter_Item>
|
||||
<ShuttleEngine>4</ShuttleEngine>
|
||||
</costList>
|
||||
<building>
|
||||
<destroySound>BuildingDestroyed_Metal_Small</destroySound>
|
||||
<isAirtight>false</isAirtight>
|
||||
<isStuffableAirtight>false</isStuffableAirtight>
|
||||
</building>
|
||||
<comps>
|
||||
<li Class="WulaFallenEmpire.CompProperties_PrefabSkyfallerCaller">
|
||||
<prefabDefName>WULA_ArmedShuttleWithPocket_SP_Prefab</prefabDefName>
|
||||
<freePrefab>true</freePrefab>
|
||||
<skyfallerDef>WULA_ArmedShuttleWithPocket_Incoming</skyfallerDef>
|
||||
<destroyBuilding>true</destroyBuilding>
|
||||
<delayTicks>1</delayTicks>
|
||||
<allowThinRoof>true</allowThinRoof>
|
||||
<allowThickRoof>false</allowThickRoof>
|
||||
</li>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
<ThingDef ParentName="ShuttleSkyfallerBase">
|
||||
<defName>WULA_ArmedShuttleWithPocket_Incoming</defName>
|
||||
<label>CVe-3"渡鸦" (接近中)</label>
|
||||
<thingClass>WulaFallenEmpire.Skyfaller_PrefabSpawner</thingClass>
|
||||
<graphicData>
|
||||
<graphicClass>Graphic_Single</graphicClass>
|
||||
<texPath>Wula/Building/WULA_ArmedShuttle_Moving</texPath>
|
||||
<drawSize>(14,14)</drawSize>
|
||||
<shaderType>CutoutComplex</shaderType>
|
||||
</graphicData>
|
||||
<staticSunShadowHeight Inherit="False" IsNull="True" />
|
||||
<castEdgeShadows>False</castEdgeShadows>
|
||||
<size>(9,13)</size>
|
||||
<skyfaller>
|
||||
<movementType>Decelerate</movementType>
|
||||
<anticipationSound>Shuttle_Landing</anticipationSound>
|
||||
<anticipationSoundTicks>250</anticipationSoundTicks>
|
||||
<ticksToImpactRange>200~250</ticksToImpactRange>
|
||||
<shadowSize>(9,13)</shadowSize>
|
||||
<angleCurve>
|
||||
<points>
|
||||
<li>(0,0)</li>
|
||||
<li>(1, 1)</li>
|
||||
</points>
|
||||
</angleCurve>
|
||||
<zPositionCurve>
|
||||
<points>
|
||||
<li>(0.95,1.5)</li>
|
||||
<li>(1,0)</li>
|
||||
</points>
|
||||
</zPositionCurve>
|
||||
<speedCurve>
|
||||
<points>
|
||||
<li>(0.6,0.6)</li>
|
||||
<li>(0.95,0.1)</li>
|
||||
<li>(0.99,0.01)</li>
|
||||
</points>
|
||||
</speedCurve>
|
||||
</skyfaller>
|
||||
<comps>
|
||||
<li Class="CompProperties_Effecter">
|
||||
<effecterDef>Smoke_Joint</effecterDef>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_SkyfallerFaction"/>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
<ThingDef ParentName="BuildingBase">
|
||||
<defName>WULA_ArmedShuttleWithPocket</defName>
|
||||
<label>CVe-3"渡鸦"</label>
|
||||
<description>乌拉帝国用于在舰队和地表构建联系的特种穿梭机,拥有巨大的货仓和一个内部折叠的生活区,因此载重量惊人且可以在内部活动。它同时还拥有一面高反射概率的反射盾,可以抵挡大部分射弹。</description>
|
||||
<thingClass>WulaFallenEmpire.Building_ArmedShuttleWithPocket</thingClass>
|
||||
<preventDroppingThingsOn>true</preventDroppingThingsOn>
|
||||
<altitudeLayer>Building</altitudeLayer>
|
||||
<pathCost>50</pathCost>
|
||||
<blockWind>true</blockWind>
|
||||
<passability>PassThroughOnly</passability>
|
||||
<fillPercent>0.5</fillPercent>
|
||||
<size>(2,2)</size>
|
||||
<size>(9,13)</size>
|
||||
<drawHighlight>true</drawHighlight>
|
||||
<highlightColor>(0.56, 0.62, 0.9)</highlightColor>
|
||||
<uiIconScale>1</uiIconScale>
|
||||
<graphicData>
|
||||
<graphicClass>Graphic_Multi</graphicClass>
|
||||
<graphicClass>Graphic_Single</graphicClass>
|
||||
<texPath>Wula/Building/WULA_ArmedShuttle</texPath>
|
||||
<shaderType>CutoutComplex</shaderType>
|
||||
<drawSize>(3,3.25)</drawSize>
|
||||
<drawOffset>(0, 8, 0.8)</drawOffset>
|
||||
<shadowData>
|
||||
<volume>(1, 1, 1)</volume>
|
||||
<offset>(0, 0, -1.2)</offset>
|
||||
</shadowData>
|
||||
<!-- <shaderType>CutoutComplex</shaderType> -->
|
||||
<drawSize>(14,14)</drawSize>
|
||||
</graphicData>
|
||||
<staticSunShadowHeight Inherit="False" IsNull="True" />
|
||||
<castEdgeShadows>False</castEdgeShadows>
|
||||
<statBases>
|
||||
<MaxHitPoints>6000</MaxHitPoints>
|
||||
<MaxHitPoints>5000</MaxHitPoints>
|
||||
<Flammability>0</Flammability>
|
||||
<WorkToBuild>40000</WorkToBuild>
|
||||
<Mass>150</Mass>
|
||||
<WorkToBuild>1</WorkToBuild>
|
||||
<Mass>12000</Mass>
|
||||
<Comfort>0.65</Comfort>
|
||||
</statBases>
|
||||
<tickerType>Normal</tickerType>
|
||||
<constructionSkillPrerequisite>8</constructionSkillPrerequisite>
|
||||
<costList>
|
||||
<WULA_Alloy>500</WULA_Alloy>
|
||||
<WULA_Neutronium>150</WULA_Neutronium>
|
||||
<WULA_Dark_Matter_Item>25</WULA_Dark_Matter_Item>
|
||||
<ShuttleEngine>4</ShuttleEngine>
|
||||
</costList>
|
||||
<canOverlapZones>true</canOverlapZones>
|
||||
<killedLeavings>
|
||||
<Steel>60</Steel>
|
||||
<Plasteel>60</Plasteel>
|
||||
<ChunkSlagSteel>5</ChunkSlagSteel>
|
||||
<ComponentIndustrial>4</ComponentIndustrial>
|
||||
</killedLeavings>
|
||||
<rotatable>true</rotatable>
|
||||
<hasInteractionCell>true</hasInteractionCell>
|
||||
<interactionCellOffset>(2, 0, 0)</interactionCellOffset>
|
||||
<defaultPlacingRot>East</defaultPlacingRot>
|
||||
<hasInteractionCell>false</hasInteractionCell>
|
||||
<defaultPlacingRot>North</defaultPlacingRot>
|
||||
<selectable>true</selectable>
|
||||
<terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
|
||||
<soundImpactDefault>BulletImpact_Metal</soundImpactDefault>
|
||||
@@ -62,148 +172,8 @@
|
||||
<isInert>true</isInert>
|
||||
<forcedCostLeavings>
|
||||
<li MayRequire="Ludeon.RimWorld.Odyssey">ShuttleEngine</li>
|
||||
</forcedCostLeavings>
|
||||
<turretGunDef>WULA_Shuttle_Autocannon</turretGunDef>
|
||||
<turretBurstCooldownTime>5.5</turretBurstCooldownTime>
|
||||
<turretTopDrawSize>1.75</turretTopDrawSize>
|
||||
<turretTopOffset>(0, 0.05)</turretTopOffset>
|
||||
</building>
|
||||
<inspectorTabs>
|
||||
<li>ITab_ContentsTransporter</li>
|
||||
<li>ITab_Shells</li>
|
||||
</inspectorTabs>
|
||||
<!-- <researchPrerequisites>
|
||||
<li>Shuttles</li>
|
||||
</researchPrerequisites> -->
|
||||
<comps>
|
||||
<li Class="CompProperties_Shuttle">
|
||||
<shipDef>Ship_ArmedShuttle</shipDef>
|
||||
</li>
|
||||
<li Class="CompProperties_Launchable">
|
||||
<fuelPerTile>3</fuelPerTile>
|
||||
<minFuelCost>50</minFuelCost>
|
||||
<skyfallerLeaving>ArmedShuttleLeaving_WULA</skyfallerLeaving>
|
||||
<worldObjectDef>PassengerShuttle</worldObjectDef>
|
||||
<cooldownTicks>3750</cooldownTicks> <!-- 1.5 hours -->
|
||||
<fixedLaunchDistanceMax>62</fixedLaunchDistanceMax>
|
||||
<cooldownEndedMessage>{0} is ready to launch again.</cooldownEndedMessage>
|
||||
</li>
|
||||
<li Class="CompProperties_Transporter">
|
||||
<massCapacity>500</massCapacity>
|
||||
<max1PerGroup>true</max1PerGroup>
|
||||
<canChangeAssignedThingsAfterStarting>true</canChangeAssignedThingsAfterStarting>
|
||||
<pawnLoadedSound>Shuttle_PawnLoaded</pawnLoadedSound>
|
||||
<pawnExitSound>Shuttle_PawnExit</pawnExitSound>
|
||||
<showMassInInspectString>true</showMassInInspectString>
|
||||
</li>
|
||||
<li Class="CompProperties_Refuelable">
|
||||
<fuelCapacity>400</fuelCapacity>
|
||||
<targetFuelLevelConfigurable>true</targetFuelLevelConfigurable>
|
||||
<initialConfigurableTargetFuelLevel>400</initialConfigurableTargetFuelLevel>
|
||||
<fuelFilter>
|
||||
<thingDefs>
|
||||
<li>Chemfuel</li>
|
||||
</thingDefs>
|
||||
</fuelFilter>
|
||||
<fuelLabel>Chemfuel</fuelLabel>
|
||||
<fuelGizmoLabel>Chemfuel</fuelGizmoLabel>
|
||||
<consumeFuelOnlyWhenUsed>true</consumeFuelOnlyWhenUsed>
|
||||
<autoRefuelPercent>1</autoRefuelPercent>
|
||||
<showFuelGizmo>true</showFuelGizmo>
|
||||
<drawOutOfFuelOverlay>false</drawOutOfFuelOverlay>
|
||||
<showAllowAutoRefuelToggle>true</showAllowAutoRefuelToggle>
|
||||
<canEjectFuel>true</canEjectFuel>
|
||||
</li>
|
||||
<li Class="CompProperties_AmbientSound">
|
||||
<sound>ShuttleIdle_Ambience</sound>
|
||||
</li>
|
||||
<li Class="CompProperties_ProjectileInterceptor">
|
||||
<radius>12</radius>
|
||||
<interceptGroundProjectiles>true</interceptGroundProjectiles>
|
||||
<color>(0.5, 0.3, 0.9, 0.5)</color>
|
||||
<reactivateEffect>BulletShieldGenerator_Reactivate</reactivateEffect>
|
||||
<activeSound>BulletShield_Ambience</activeSound>
|
||||
<disarmedByEmpForTicks>1080</disarmedByEmpForTicks>
|
||||
<chargeIntervalTicks>-1</chargeIntervalTicks>
|
||||
<chargeDurationTicks>0</chargeDurationTicks>
|
||||
</li>
|
||||
</comps>
|
||||
<placeWorkers>
|
||||
<li>PlaceWorker_NotUnderRoof</li>
|
||||
<li>PlaceWorker_TurretTop</li>
|
||||
</placeWorkers>
|
||||
<uiOrder>2601</uiOrder>
|
||||
</ThingDef>
|
||||
|
||||
<ThingDef ParentName="BuildingBase">
|
||||
<defName>WULA_ArmedShuttleWithPocket</defName>
|
||||
<label>CVe-3o"渡鸦"</label>
|
||||
<description>乌拉帝国所使用的大气内专用近地穿梭机。集成折叠空间技术能安全装载比体积大得多的货物。配备集成能量发生器投射暗物质护盾。并且装载一门近防炮武装保护帝国资产。</description>
|
||||
<thingClass>WulaFallenEmpire.Building_ArmedShuttleWithPocket</thingClass>
|
||||
<preventDroppingThingsOn>true</preventDroppingThingsOn>
|
||||
<altitudeLayer>Building</altitudeLayer>
|
||||
<pathCost>50</pathCost>
|
||||
<blockWind>true</blockWind>
|
||||
<passability>PassThroughOnly</passability>
|
||||
<fillPercent>0.5</fillPercent>
|
||||
<size>(2,2)</size>
|
||||
<drawHighlight>true</drawHighlight>
|
||||
<highlightColor>(0.56, 0.62, 0.9)</highlightColor>
|
||||
<uiIconScale>1</uiIconScale>
|
||||
<graphicData>
|
||||
<graphicClass>Graphic_Multi</graphicClass>
|
||||
<texPath>Wula/Building/WULA_ArmedShuttle</texPath>
|
||||
<shaderType>CutoutComplex</shaderType>
|
||||
<drawSize>(6,6.25)</drawSize>
|
||||
<drawOffset>(0, 8, 1.6)</drawOffset>
|
||||
<shadowData>
|
||||
<volume>(1, 1, 1)</volume>
|
||||
<offset>(0, 0, -1.2)</offset>
|
||||
</shadowData>
|
||||
</graphicData>
|
||||
<staticSunShadowHeight Inherit="False" IsNull="True" />
|
||||
<castEdgeShadows>False</castEdgeShadows>
|
||||
<statBases>
|
||||
<MaxHitPoints>6000</MaxHitPoints>
|
||||
<Flammability>0</Flammability>
|
||||
<WorkToBuild>40000</WorkToBuild>
|
||||
<Mass>150</Mass>
|
||||
<Comfort>0.65</Comfort>
|
||||
</statBases>
|
||||
<tickerType>Normal</tickerType>
|
||||
<!-- <designationCategory>WULA_Buildings</designationCategory> -->
|
||||
<constructionSkillPrerequisite>8</constructionSkillPrerequisite>
|
||||
<costList>
|
||||
<Steel>300</Steel>
|
||||
<Plasteel>200</Plasteel>
|
||||
<ComponentIndustrial>8</ComponentIndustrial>
|
||||
<ComponentSpacer>2</ComponentSpacer>
|
||||
<ShuttleEngine>1</ShuttleEngine>
|
||||
</costList>
|
||||
<canOverlapZones>true</canOverlapZones>
|
||||
<killedLeavings>
|
||||
<Steel>60</Steel>
|
||||
<Plasteel>60</Plasteel>
|
||||
<ChunkSlagSteel>5</ChunkSlagSteel>
|
||||
<ComponentIndustrial>4</ComponentIndustrial>
|
||||
</killedLeavings>
|
||||
<rotatable>true</rotatable>
|
||||
<hasInteractionCell>true</hasInteractionCell>
|
||||
<interactionCellOffset>(0, 1, 0)</interactionCellOffset>
|
||||
<defaultPlacingRot>East</defaultPlacingRot>
|
||||
<selectable>true</selectable>
|
||||
<terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
|
||||
<soundImpactDefault>BulletImpact_Metal</soundImpactDefault>
|
||||
<preventSkyfallersLandingOn>true</preventSkyfallersLandingOn>
|
||||
<drawerType>RealtimeOnly</drawerType>
|
||||
<repairEffect>ConstructMetal</repairEffect>
|
||||
<forceDebugSpawnable>true</forceDebugSpawnable>
|
||||
<building>
|
||||
<claimable>false</claimable>
|
||||
<destroySound>BuildingDestroyed_Metal_Big</destroySound>
|
||||
<paintable>true</paintable>
|
||||
<isInert>true</isInert>
|
||||
<forcedCostLeavings>
|
||||
<li MayRequire="Ludeon.RimWorld.Odyssey">ShuttleEngine</li>
|
||||
<li MayRequire="Ludeon.RimWorld.Odyssey">ShuttleEngine</li>
|
||||
<li MayRequire="Ludeon.RimWorld.Odyssey">ShuttleEngine</li>
|
||||
</forcedCostLeavings>
|
||||
<turretGunDef>WULA_Shuttle_Autocannon</turretGunDef>
|
||||
@@ -232,7 +202,7 @@
|
||||
<cooldownEndedMessage>{0} is ready to launch again.</cooldownEndedMessage>
|
||||
</li>
|
||||
<li Class="CompProperties_Transporter">
|
||||
<massCapacity>500</massCapacity>
|
||||
<massCapacity>5000</massCapacity>
|
||||
<max1PerGroup>true</max1PerGroup>
|
||||
<canChangeAssignedThingsAfterStarting>true</canChangeAssignedThingsAfterStarting>
|
||||
<pawnLoadedSound>Shuttle_PawnLoaded</pawnLoadedSound>
|
||||
@@ -257,30 +227,57 @@
|
||||
<showAllowAutoRefuelToggle>true</showAllowAutoRefuelToggle>
|
||||
<canEjectFuel>true</canEjectFuel>
|
||||
</li>
|
||||
<li Class="CompProperties_Power">
|
||||
<compClass>CompPowerPlant</compClass>
|
||||
<basePowerConsumption>-400</basePowerConsumption>
|
||||
<transmitsPower>true</transmitsPower>
|
||||
</li>
|
||||
<li Class="CompProperties_AmbientSound">
|
||||
<sound>ShuttleIdle_Ambience</sound>
|
||||
</li>
|
||||
<li Class="CompProperties_ProjectileInterceptor">
|
||||
<radius>12</radius>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AreaShield">
|
||||
<radius>15</radius>
|
||||
<baseHitPoints>300</baseHitPoints>
|
||||
<rechargeDelay>2400</rechargeDelay>
|
||||
<rechargeHitPointsIntervalTicks>30</rechargeHitPointsIntervalTicks>
|
||||
|
||||
<!-- 效果器配置 -->
|
||||
<absorbEffecter>Interceptor_BlockedProjectile</absorbEffecter>
|
||||
<interceptEffecter>Interceptor_BlockedProjectile</interceptEffecter>
|
||||
<breakEffecter>Shield_Break</breakEffecter>
|
||||
<reactivateEffecter>BulletShieldGenerator_Reactivate</reactivateEffecter>
|
||||
|
||||
<color>(0.9, 0.2, 0.2, 0.5)</color> <!-- 护盾气泡的颜色 (RGBA) -->
|
||||
|
||||
<!-- 拦截设置 -->
|
||||
<interceptGroundProjectiles>true</interceptGroundProjectiles>
|
||||
<color>(0.5, 0.3, 0.9, 0.5)</color>
|
||||
<reactivateEffect>BulletShieldGenerator_Reactivate</reactivateEffect>
|
||||
<activeSound>BulletShield_Ambience</activeSound>
|
||||
<disarmedByEmpForTicks>1080</disarmedByEmpForTicks>
|
||||
<chargeIntervalTicks>-1</chargeIntervalTicks>
|
||||
<chargeDurationTicks>0</chargeDurationTicks>
|
||||
<interceptNonHostileProjectiles>false</interceptNonHostileProjectiles>
|
||||
<interceptAirProjectiles>true</interceptAirProjectiles>
|
||||
|
||||
<!-- 反射设置 -->
|
||||
<canReflect>true</canReflect>
|
||||
<reflectChance>0.85</reflectChance>
|
||||
<reflectAngleRange>30</reflectAngleRange>
|
||||
<reflectCost>0</reflectCost>
|
||||
<reflectEffecter>Interceptor_BlockedProjectile</reflectEffecter>
|
||||
</li>
|
||||
<li Class="WulaFallenEmpire.CompProperties_AreaDamage">
|
||||
<radius>15</radius>
|
||||
<damageIntervalTicks>30</damageIntervalTicks>
|
||||
<damageDef>Flame</damageDef>
|
||||
<damageAmount>8</damageAmount>
|
||||
<scaleWithPsychicSensitivity>false</scaleWithPsychicSensitivity>
|
||||
<affectFriendly>false</affectFriendly>
|
||||
<affectNeutral>false</affectNeutral>
|
||||
<affectHostile>true</affectHostile>
|
||||
<affectBuildings>false</affectBuildings>
|
||||
<ignoreFactionRelations>false</ignoreFactionRelations>
|
||||
<startEnabled>false</startEnabled>
|
||||
<toggleLabel>热辐射</toggleLabel>
|
||||
<toggleDescription>CVe-3"渡鸦"可以启动防御设施,蒸发胆敢进入反射立场内的敌军——这同时会使得它伤害附近所有的散落物品。</toggleDescription>
|
||||
<toggleIconPath>Wula/UI/Commands/Wula_Psi_Titan_AreaDamage</toggleIconPath>
|
||||
</li>
|
||||
</comps>
|
||||
<modExtensions>
|
||||
<li Class="WulaFallenEmpire.PocketMapProperties">
|
||||
<pocketMapGenerator>WULA_PocketSpace_Small</pocketMapGenerator>
|
||||
<exitDef>WULA_PocketMapExit</exitDef>
|
||||
<pocketMapSize>(13, 13)</pocketMapSize>
|
||||
<pocketMapSize>(25, 25)</pocketMapSize>
|
||||
<allowDirectAccess>true</allowDirectAccess>
|
||||
</li>
|
||||
</modExtensions>
|
||||
@@ -291,6 +288,60 @@
|
||||
<uiOrder>2601</uiOrder>
|
||||
</ThingDef>
|
||||
|
||||
<ThingDef ParentName="Wall">
|
||||
<defName>WulaWall_Inner</defName>
|
||||
<label>乌拉帝国内舱壁墙</label>
|
||||
<description>乌拉帝国内舱壁墙,拥有预埋的管线,可以提供来自穿梭机的电力。</description>
|
||||
<uiOrder>1800</uiOrder>
|
||||
<uiIconPath>Wula/Building/Linked/WULA_Fortress_Wall_MenuIcon</uiIconPath>
|
||||
<graphicData>
|
||||
<texPath>Wula/Building/Linked/WulaWall/WulaWall_Atlas</texPath>
|
||||
<graphicClass>Graphic_Single</graphicClass>
|
||||
<shaderType>CutoutComplex</shaderType>
|
||||
</graphicData>
|
||||
<statBases>
|
||||
<MarketValue>20</MarketValue>
|
||||
<Beauty>1</Beauty>
|
||||
<WorkToBuild>2500</WorkToBuild>
|
||||
<Flammability>0</Flammability>
|
||||
<MeditationFocusStrength>0.22</MeditationFocusStrength>
|
||||
<Cleanliness>0.1</Cleanliness>
|
||||
</statBases>
|
||||
<useHitPoints>false</useHitPoints>
|
||||
<designationCategory Inherit="False"/>
|
||||
<stuffCategories Inherit="False"/>
|
||||
<costStuffCount>0</costStuffCount>
|
||||
<costList>
|
||||
<WULA_Alloy>4</WULA_Alloy>
|
||||
</costList>
|
||||
<building>
|
||||
<isAirtight>true</isAirtight>
|
||||
<deconstructible>false</deconstructible>
|
||||
</building>
|
||||
<recipeMaker>
|
||||
<defaultIngredientFilter>
|
||||
<categories>
|
||||
<li>Metallic</li>
|
||||
</categories>
|
||||
</defaultIngredientFilter>
|
||||
</recipeMaker>
|
||||
<stuffCategories Inherit="False"/>
|
||||
<useStuffTerrainAffordance>false</useStuffTerrainAffordance>
|
||||
<terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
|
||||
<comps Inherit="False">
|
||||
<li Class="CompProperties_MeditationFocus">
|
||||
<statDef>MeditationFocusStrength</statDef>
|
||||
<focusTypes>
|
||||
<li>Minimal</li>
|
||||
</focusTypes>
|
||||
</li>
|
||||
<li Class="CompProperties_Power">
|
||||
<compClass>CompPowerPlant</compClass>
|
||||
<basePowerConsumption>-500</basePowerConsumption>
|
||||
<transmitsPower>true</transmitsPower>
|
||||
</li>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
<!-- 口袋空间退出点定义 -->
|
||||
<ThingDef ParentName="PocketMapExit">
|
||||
<defName>WULA_PocketMapExit</defName>
|
||||
@@ -300,7 +351,7 @@
|
||||
<size>(3,3)</size>
|
||||
<drawerType>MapMeshAndRealTime</drawerType>
|
||||
<graphicData>
|
||||
<texPath>Wula/Building/WULA_Machine_Recharger</texPath>
|
||||
<texPath>Wula/Building/WULA_PocketMapExit</texPath>
|
||||
<graphicClass>Graphic_Single</graphicClass>
|
||||
<drawSize>(3,3)</drawSize>
|
||||
</graphicData>
|
||||
@@ -318,11 +369,6 @@
|
||||
<li Class="CompProperties_Effecter">
|
||||
<effecterDef>UndercaveMapExitLightshafts</effecterDef>
|
||||
</li>
|
||||
<li Class="CompProperties_Power">
|
||||
<compClass>CompPowerPlant</compClass>
|
||||
<basePowerConsumption>-400</basePowerConsumption>
|
||||
<transmitsPower>true</transmitsPower>
|
||||
</li>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
|
||||
@@ -406,30 +452,29 @@
|
||||
<thingClass>WulaFallenEmpire.ArmedShuttleIncoming</thingClass>
|
||||
<graphicData>
|
||||
<graphicClass>Graphic_Multi</graphicClass>
|
||||
<texPath>Wula/Building/WULA_ArmedShuttle</texPath>
|
||||
<texPath>Wula/Building/WULA_ArmedShuttle_Moving</texPath>
|
||||
<shaderType>CutoutComplex</shaderType>
|
||||
<drawSize>(6,6.25)</drawSize>
|
||||
<drawOffset>(0, 8, 1.6)</drawOffset>
|
||||
</graphicData>
|
||||
<staticSunShadowHeight Inherit="False" IsNull="True" />
|
||||
<castEdgeShadows>False</castEdgeShadows>
|
||||
<size>(2,2)</size>
|
||||
<size>(8,12)</size>
|
||||
<skyfaller>
|
||||
<movementType>Decelerate</movementType>
|
||||
<anticipationSound>Shuttle_Landing</anticipationSound>
|
||||
<anticipationSoundTicks>250</anticipationSoundTicks>
|
||||
<ticksToImpactRange>200~250</ticksToImpactRange>
|
||||
<shadowSize>(3.5,5.5)</shadowSize>
|
||||
<rotationCurve>
|
||||
<shadowSize>(9,13)</shadowSize>
|
||||
<angleCurve>
|
||||
<points>
|
||||
<li>(0,30)</li>
|
||||
<li>(0.5,5)</li>
|
||||
<li>(0.9,-5)</li>
|
||||
<li>(0.95,0)</li>
|
||||
<li>(0,0)</li>
|
||||
<li>(1, 1)</li>
|
||||
</points>
|
||||
</rotationCurve>
|
||||
</angleCurve>
|
||||
<zPositionCurve>
|
||||
<points>
|
||||
<li>(0.95,2.5)</li>
|
||||
<li>(0.95,1.5)</li>
|
||||
<li>(1,0)</li>
|
||||
</points>
|
||||
</zPositionCurve>
|
||||
@@ -437,6 +482,7 @@
|
||||
<points>
|
||||
<li>(0.6,0.6)</li>
|
||||
<li>(0.95,0.1)</li>
|
||||
<li>(0.99,0.01)</li>
|
||||
</points>
|
||||
</speedCurve>
|
||||
</skyfaller>
|
||||
@@ -448,15 +494,13 @@
|
||||
<thingClass>PassengerShuttleLeaving</thingClass>
|
||||
<rotatable>true</rotatable>
|
||||
<graphicData>
|
||||
<graphicClass>Graphic_Multi</graphicClass>
|
||||
<texPath>Wula/Building/WULA_ArmedShuttle</texPath>
|
||||
<shaderType>CutoutComplex</shaderType>
|
||||
<drawSize>(6,6.25)</drawSize>
|
||||
<drawOffset>(0, 8, 1.6)</drawOffset>
|
||||
<graphicClass>Graphic_Single</graphicClass>
|
||||
<texPath>Wula/Building/WULA_ArmedShuttle_Moving</texPath>
|
||||
<drawSize>(14,14)</drawSize>
|
||||
</graphicData>
|
||||
<staticSunShadowHeight Inherit="False" IsNull="True" />
|
||||
<castEdgeShadows>False</castEdgeShadows>
|
||||
<size>(2,2)</size>
|
||||
<size>(8,12)</size>
|
||||
<skyfaller>
|
||||
<reversed>true</reversed>
|
||||
<anticipationSound>Shuttle_Leaving</anticipationSound>
|
||||
@@ -464,7 +508,7 @@
|
||||
<ticksToImpactRange>-40~-15</ticksToImpactRange>
|
||||
<moteSpawnTime>0.05</moteSpawnTime>
|
||||
<shadow>Things/Skyfaller/SkyfallerShadowRectangle</shadow>
|
||||
<shadowSize>(3.5,5.5)</shadowSize>
|
||||
<shadowSize>(8,12)</shadowSize>
|
||||
<motesPerCell>1</motesPerCell>
|
||||
<rotationCurve>
|
||||
<points>
|
||||
@@ -489,8 +533,8 @@
|
||||
</ThingDef>
|
||||
<TransportShipDef>
|
||||
<defName>Ship_ArmedShuttle</defName>
|
||||
<label>武装穿梭机</label>
|
||||
<shipThing>WULA_ArmedShuttle</shipThing>
|
||||
<label>CVe-3"渡鸦"</label>
|
||||
<shipThing>WULA_ArmedShuttleWithPocket</shipThing>
|
||||
<arrivingSkyfaller>ArmedShuttleIncoming_WULA</arrivingSkyfaller>
|
||||
<leavingSkyfaller>ArmedShuttleLeaving_WULA</leavingSkyfaller>
|
||||
<worldObject>Wula_ArmedShuttle_Object</worldObject>
|
||||
@@ -498,8 +542,8 @@
|
||||
</TransportShipDef>
|
||||
<WorldObjectDef ParentName="ShuttleWorldObjectBase">
|
||||
<defName>Wula_ArmedShuttle_Object</defName>
|
||||
<label>乌拉帝国武装穿梭机</label>
|
||||
<description>一台正在飞行的乌拉帝国武装穿梭机。</description>
|
||||
<label>CVe-3"渡鸦"</label>
|
||||
<description>一台正在飞行的CVe-3"渡鸦"武装穿梭机。</description>
|
||||
<expandingIconTexture>World/WorldObjects/Expanding/Wula_ArmedShuttle</expandingIconTexture>
|
||||
<expandingIconDrawSize>1</expandingIconDrawSize>
|
||||
</WorldObjectDef>
|
||||
@@ -1484,6 +1484,9 @@
|
||||
<pathCost>0</pathCost>
|
||||
<overrideMinifiedRot>North</overrideMinifiedRot>
|
||||
<minifiedDrawOffset>(0, 0, 0.2)</minifiedDrawOffset>
|
||||
<researchPrerequisites>
|
||||
<li>WULA_Colony_License_LV1_Technology</li>
|
||||
</researchPrerequisites>
|
||||
<building>
|
||||
<isEdifice>false</isEdifice>
|
||||
<isAttachment>true</isAttachment>
|
||||
|
||||
@@ -436,6 +436,7 @@
|
||||
<description>HAp-6"战车"车体正面的突击炮,射程很短并且只能在静止状态开火,但是威力巨大,专门用于对付坚固的工事和成片的人群。</description>
|
||||
<tickerType>Normal</tickerType>
|
||||
<techLevel>Spacer</techLevel>
|
||||
<tradeability>None</tradeability>
|
||||
<uiIconPath>Wula/Projectile/WULA_Shrapnel</uiIconPath>
|
||||
<graphicData>
|
||||
<texPath>Wula/Weapon/WULA_Weapon_Empty</texPath>
|
||||
|
||||
@@ -1044,6 +1044,7 @@
|
||||
</li>
|
||||
</lifeStageAges>
|
||||
<baseHealthScale>2</baseHealthScale>
|
||||
<mechWeightClass>Heavy</mechWeightClass>
|
||||
</race>
|
||||
<tools Inherit="False">
|
||||
<li>
|
||||
@@ -1186,6 +1187,7 @@
|
||||
<baseHealthScale>10</baseHealthScale>
|
||||
|
||||
<flightStartChanceOnJobStart>1</flightStartChanceOnJobStart>
|
||||
<mechWeightClass>Heavy</mechWeightClass>
|
||||
<!-- <thinkTreeConstant>WarUrchinConstant</thinkTreeConstant> -->
|
||||
</race>
|
||||
<tools Inherit="False">
|
||||
@@ -1315,6 +1317,7 @@
|
||||
<baseHealthScale>10</baseHealthScale>
|
||||
|
||||
<flightStartChanceOnJobStart>1</flightStartChanceOnJobStart>
|
||||
<mechWeightClass>Heavy</mechWeightClass>
|
||||
<!-- <thinkTreeConstant>WarUrchinConstant</thinkTreeConstant> -->
|
||||
</race>
|
||||
<tools Inherit="False">
|
||||
@@ -1420,6 +1423,7 @@
|
||||
</li>
|
||||
</lifeStageAges>
|
||||
<baseHealthScale>5</baseHealthScale>
|
||||
<mechWeightClass>Heavy</mechWeightClass>
|
||||
</race>
|
||||
<tools Inherit="False">
|
||||
<li>
|
||||
@@ -1537,6 +1541,7 @@
|
||||
<baseHealthScale>25</baseHealthScale>
|
||||
|
||||
<flightStartChanceOnJobStart>1</flightStartChanceOnJobStart>
|
||||
<mechWeightClass>Heavy</mechWeightClass>
|
||||
<!-- <thinkTreeConstant>WarUrchinConstant</thinkTreeConstant> -->
|
||||
</race>
|
||||
<tools Inherit="False">
|
||||
@@ -1960,6 +1965,7 @@
|
||||
<baseHealthScale>50</baseHealthScale>
|
||||
|
||||
<flightStartChanceOnJobStart>1</flightStartChanceOnJobStart>
|
||||
<mechWeightClass>Heavy</mechWeightClass>
|
||||
<!-- <thinkTreeConstant>WarUrchinConstant</thinkTreeConstant> -->
|
||||
</race>
|
||||
<tools Inherit="False">
|
||||
|
||||
@@ -87,4 +87,18 @@
|
||||
<scanCells>true</scanCells>
|
||||
<directOrderable>true</directOrderable>
|
||||
</WorkGiverDef>
|
||||
|
||||
<WorkGiverDef>
|
||||
<defName>WULA_Cat_Drill</defName>
|
||||
<label>钻探</label>
|
||||
<giverClass>WulaFallenEmpire.WorkGiver_DeepDrill_WulaCatConstructor</giverClass>
|
||||
<workType>Mining</workType>
|
||||
<priorityInType>50</priorityInType>
|
||||
<verb>钻探</verb>
|
||||
<gerund>钻探中</gerund>
|
||||
<requiredCapacities>
|
||||
<li>Manipulation</li>
|
||||
</requiredCapacities>
|
||||
<canBeDoneByMechs>true</canBeDoneByMechs>
|
||||
</WorkGiverDef>
|
||||
</Defs>
|
||||
@@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<LanguageData>
|
||||
<WULA_Boss_Sky_Lock.questNameRules.rulesStrings>
|
||||
<li>questName->特殊任务:天锁</li>
|
||||
<li>questName->特殊任务:击毁灵能泰坦</li>
|
||||
</WULA_Boss_Sky_Lock.questNameRules.rulesStrings>
|
||||
<WULA_Boss_Sky_Lock.questDescriptionRules.rulesStrings>
|
||||
<li>questDescription->乌拉帝国行星封锁机关的总控AI向殖民地发送了一个特殊的请求,一台部署在运输舰上的乌拉帝国战争机械——<color=#AA74E5><i>灵能泰坦</i></color>——因为失控而无差别攻击,行星封锁机关不得不让运输舰坠向星球表面以阻止事态扩大。\n\n可惜的是,<color=#AA74E5><i>灵能泰坦</i></color>没有因为运输舰坠毁而受到伤害,其仍然在星球表面大肆杀戮,殖民地必须直面这台骇人的巨兽。行星封锁机关为殖民地提供了以下信息:\n\n<color=#9F0400><i>-内驱回路</i></color> PAt-6"灵能泰坦"虽然是一台强大的灵能战争机器,但是其灵能回路是以封闭循环的方式刻印的,外部的灵能攻击无法影响它\n<color=#9F0400><i>-死亡使者</i></color> PAt-6"灵能泰坦"的灵能尖啸可以无差别粉碎所有的目标,除非有足够的信心和手段控制住它,否则不要与其正面交锋\n<color=#9F0400><i>-连环天锁</i></color> PAt-6"灵能泰坦"一定会和天锁一起出现,天锁是纯粹的灵能造物,可以吸收灵能泰坦受到的伤害。在所有的天锁被摧毁前,灵能泰坦不会受到伤害。\n\n行星封锁机关承诺,一旦击败了暴走的<color=#AA74E5><i>灵能泰坦</i></color>,她们可以回收其灵能回路的核心,以此为殖民地建造一台全新的灵能泰坦。</li>
|
||||
<li>questDescription->乌拉帝国行星封锁机关的总控AI向殖民地发送了一个特殊的请求,一台部署在运输舰上的乌拉帝国战争机械——<color=#AA74E5><i>灵能泰坦</i></color>——因为失控而无差别攻击,行星封锁机关不得不让运输舰坠向星球表面以阻止事态扩大。\n\n可惜的是,<color=#AA74E5><i>灵能泰坦</i></color>没有因为运输舰坠毁而受到伤害,其仍然在星球表面大肆杀戮,殖民地必须直面这台骇人的巨兽。行星封锁机关为殖民地提供了以下信息:\n\n<color=#9F0400><i>-内驱回路</i></color> PAt-6"灵能泰坦"虽然是一台强大的灵能战争机器,但是其灵能回路是以封闭循环的方式刻印的,外部的灵能攻击无法影响它\n<color=#9F0400><i>-死亡使者</i></color> PAt-6"灵能泰坦"的灵能尖啸可以无差别粉碎所有的目标,除非有足够的信心和手段控制住它,否则不要与其正面交锋\n<color=#9F0400><i>-连环天锁</i></color> PAt-6"灵能泰坦"一定会和天锁一起出现,天锁是纯粹的灵能造物,可以吸收灵能泰坦受到的伤害。在所有的天锁被摧毁前,灵能泰坦不会受到伤害。\n<color=#9F0400><i>-网络控制</i></color> PAt-6"灵能泰坦"的控制了附近在坠毁中幸存的战车集群,因此坠毁地区很可能不只有一个敌人\n\n行星封锁机关承诺,一旦击败了暴走的<color=#AA74E5><i>灵能泰坦</i></color>,她们可以回收其灵能回路的核心,以此为殖民地建造一台全新的灵能泰坦。</li>
|
||||
</WULA_Boss_Sky_Lock.questDescriptionRules.rulesStrings>
|
||||
</LanguageData>
|
||||
@@ -443,4 +443,6 @@
|
||||
<WULA_Designator_CallSkyfallerInAreaDesc>标记一块区域,激活其中所有需要空投的乌拉帝国建筑和战争机械体。\n\n区域空投依然需要计算材料消耗,如果材料不足则不会进行空投。</WULA_Designator_CallSkyfallerInAreaDesc>
|
||||
<WULA_AreaCallInitiated>区域空投已下达</WULA_AreaCallInitiated>
|
||||
<WULA_NoCallableBuildingsInArea>区域内没有可接受空投指令的乌拉帝国空投区</WULA_NoCallableBuildingsInArea>
|
||||
|
||||
<WULA_AbilityRequiresNonHostility>与{0}敌对时无法使用此能力</WULA_AbilityRequiresNonHostility>
|
||||
</LanguageData>
|
||||
@@ -2,20 +2,20 @@
|
||||
<LanguageData>
|
||||
|
||||
<!-- Building_ArmedShuttleWithPocket 相关文本 -->
|
||||
<WULA.PocketSpace.Status>生活区状态</WULA.PocketSpace.Status>
|
||||
<WULA.PocketSpace.Status>\n生活区状态</WULA.PocketSpace.Status>
|
||||
<WULA.PocketSpace.Ready>已就绪</WULA.PocketSpace.Ready>
|
||||
<WULA.PocketSpace.NotGenerated>未初始化</WULA.PocketSpace.NotGenerated>
|
||||
|
||||
<!-- Gizmo 按钮文本 -->
|
||||
<WULA.PocketSpace.Initialize>初始化生活区</WULA.PocketSpace.Initialize>
|
||||
<WULA.PocketSpace.InitializeDesc>初始化穿梭机的内部口袋空间。这将在穿梭机内部创建一个可供成员休息工作的生活区。</WULA.PocketSpace.InitializeDesc>
|
||||
<WULA.PocketSpace.InitializeDesc>初始化穿梭机的生活区空间。这将在穿梭机内部创建一个可供成员休息工作的生活区。在这个空间内的殖民者无法参与穿梭机的驾驶。</WULA.PocketSpace.InitializeDesc>
|
||||
|
||||
<WULA.PocketSpace.Enter>进入生活区</WULA.PocketSpace.Enter>
|
||||
<WULA.PocketSpace.EnterDesc>进入穿梭机的内部口袋空间。选中的殖民者将被传送到内部空间。</WULA.PocketSpace.EnterDesc>
|
||||
<WULA.PocketSpace.EnterDesc>进入穿梭机的生活区空间——选中的殖民者将被传送到生活区空间。在这个空间内的殖民者无法参与穿梭机的驾驶。</WULA.PocketSpace.EnterDesc>
|
||||
|
||||
|
||||
<WULA.PocketSpace.ViewMap>查看生活区</WULA.PocketSpace.ViewMap>
|
||||
<WULA.PocketSpace.ViewMapDesc>切换视角到穿梭机的内部口袋空间。</WULA.PocketSpace.ViewMapDesc>
|
||||
<WULA.PocketSpace.ViewMapDesc>切换视角到穿梭机的生活区空间。</WULA.PocketSpace.ViewMapDesc>
|
||||
|
||||
|
||||
<!-- 消息文本 -->
|
||||
|
||||
BIN
Content/Textures/Wula/Building/WULA_ArmedShuttle.png
Normal file
|
After Width: | Height: | Size: 367 KiB |
BIN
Content/Textures/Wula/Building/WULA_ArmedShuttle_Moving.png
Normal file
|
After Width: | Height: | Size: 407 KiB |
|
Before Width: | Height: | Size: 113 KiB |
|
Before Width: | Height: | Size: 188 KiB |
|
Before Width: | Height: | Size: 112 KiB |
BIN
Content/Textures/Wula/Building/WULA_PocketMapExit.png
Normal file
|
After Width: | Height: | Size: 162 KiB |
|
After Width: | Height: | Size: 766 KiB |
BIN
Content/Textures/Wula/Building/WULA_Table1x2c_east.png
Normal file
|
After Width: | Height: | Size: 154 KiB |
BIN
Content/Textures/Wula/Building/WULA_Table1x2c_south.png
Normal file
|
After Width: | Height: | Size: 140 KiB |
|
Before Width: | Height: | Size: 210 KiB After Width: | Height: | Size: 210 KiB |
|
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 210 KiB |
|
After Width: | Height: | Size: 216 KiB |
|
After Width: | Height: | Size: 4.1 KiB |
|
After Width: | Height: | Size: 6.5 KiB |
@@ -0,0 +1,48 @@
|
||||
using RimWorld;
|
||||
using Verse;
|
||||
|
||||
namespace WulaFallenEmpire
|
||||
{
|
||||
public class CompProperties_AbilityRequiresNonHostility : CompProperties_AbilityEffect
|
||||
{
|
||||
public FactionDef factionDef;
|
||||
|
||||
public CompProperties_AbilityRequiresNonHostility()
|
||||
{
|
||||
compClass = typeof(CompAbilityEffect_RequiresNonHostility);
|
||||
}
|
||||
}
|
||||
|
||||
public class CompAbilityEffect_RequiresNonHostility : CompAbilityEffect
|
||||
{
|
||||
public new CompProperties_AbilityRequiresNonHostility Props => (CompProperties_AbilityRequiresNonHostility)props;
|
||||
|
||||
public override bool GizmoDisabled(out string reason)
|
||||
{
|
||||
Pawn pawn = parent.pawn;
|
||||
if (pawn == null || pawn.Faction == null || Props.factionDef == null)
|
||||
{
|
||||
reason = null;
|
||||
return false;
|
||||
}
|
||||
|
||||
// 查找指定派系
|
||||
Faction targetFaction = Find.FactionManager.FirstFactionOfDef(Props.factionDef);
|
||||
if (targetFaction == null)
|
||||
{
|
||||
reason = null;
|
||||
return false;
|
||||
}
|
||||
|
||||
// 检查是否敌对
|
||||
if (pawn.Faction.HostileTo(targetFaction))
|
||||
{
|
||||
reason = "WULA_AbilityRequiresNonHostility".Translate(Props.factionDef);
|
||||
return true;
|
||||
}
|
||||
|
||||
reason = null;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -21,13 +21,10 @@ namespace WulaFallenEmpire
|
||||
#region 静态图标定义(使用原版MapPortal的图标)
|
||||
|
||||
/// <summary>查看口袋地图图标</summary>
|
||||
private static readonly Texture2D ViewPocketMapTex = ContentFinder<Texture2D>.Get("UI/Commands/ViewCave");
|
||||
|
||||
/// <summary>取消进入图标</summary>
|
||||
private static readonly Texture2D CancelEnterTex = ContentFinder<Texture2D>.Get("UI/Designators/Cancel");
|
||||
private static readonly Texture2D ViewPocketMapTex = ContentFinder<Texture2D>.Get("Wula/UI/Commands/WULA_View_ArmedShuttle_Pocket");
|
||||
|
||||
/// <summary>默认进入图标</summary>
|
||||
private static readonly Texture2D DefaultEnterTex = ContentFinder<Texture2D>.Get("UI/Commands/LoadTransporter");
|
||||
private static readonly Texture2D DefaultEnterTex = ContentFinder<Texture2D>.Get("Wula/UI/Commands/WULA_Enter_ArmedShuttle_Pocket");
|
||||
|
||||
#endregion
|
||||
#region 口袋空间字段
|
||||
|
||||
@@ -10,16 +10,61 @@ namespace WulaFallenEmpire
|
||||
|
||||
protected override bool Satisfied(Pawn pawn)
|
||||
{
|
||||
if (pawn == null || pawn.Dead || pawn.Downed)
|
||||
return false;
|
||||
try
|
||||
{
|
||||
if (pawn == null || pawn.Dead || pawn.Downed)
|
||||
return false;
|
||||
|
||||
// 检查是否有自主机械组件
|
||||
var comp = pawn.GetComp<CompAutonomousMech>();
|
||||
if (comp == null)
|
||||
return false;
|
||||
// 检查是否有自主机械组件
|
||||
var comp = pawn.GetComp<CompAutonomousMech>();
|
||||
if (comp == null)
|
||||
return false;
|
||||
|
||||
// 检查当前工作模式是否匹配要求
|
||||
return comp.CurrentWorkMode == requiredMode;
|
||||
// 检查当前工作模式是否匹配要求
|
||||
if (comp.CurrentWorkMode != requiredMode)
|
||||
return false;
|
||||
|
||||
// 额外的安全检查:确保pawn有工作设置
|
||||
if (pawn.workSettings == null)
|
||||
{
|
||||
Log.Warning($"[WULA] {pawn.LabelShort} has no workSettings in ThinkNode_ConditionalAutonomousWorkMode");
|
||||
return false;
|
||||
}
|
||||
|
||||
// 检查是否启用了工作
|
||||
if (!pawn.workSettings.EverWork)
|
||||
{
|
||||
Log.Warning($"[WULA] {pawn.LabelShort} has EverWork=false in ThinkNode_ConditionalAutonomousWorkMode");
|
||||
return false;
|
||||
}
|
||||
|
||||
// 检查是否有工作给予器
|
||||
var workGivers = pawn.workSettings.WorkGiversInOrderNormal;
|
||||
if (workGivers == null || workGivers.Count == 0)
|
||||
{
|
||||
Log.Warning($"[WULA] {pawn.LabelShort} has no work givers in ThinkNode_ConditionalAutonomousWorkMode");
|
||||
return false;
|
||||
}
|
||||
|
||||
// 检查是否为机械体且具有机械体能力
|
||||
if (pawn.RaceProps.IsMechanoid)
|
||||
{
|
||||
// 检查是否有操纵能力
|
||||
var manipulation = pawn.health?.capacities?.GetLevel(PawnCapacityDefOf.Manipulation);
|
||||
if (manipulation < 0.1f)
|
||||
{
|
||||
Log.Warning($"[WULA] {pawn.LabelShort} has insufficient manipulation capacity: {manipulation}");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
catch (System.Exception ex)
|
||||
{
|
||||
Log.Error($"[WULA] Exception in ThinkNode_ConditionalAutonomousWorkMode.Satisfied for pawn {pawn?.LabelShort}: {ex}");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,8 @@ namespace WulaFallenEmpire
|
||||
public SlateRef<Map> map;
|
||||
public SlateRef<bool> sendMessageOnSuccess = true;
|
||||
public SlateRef<bool> sendMessageOnFailure = true;
|
||||
public SlateRef<bool> allowThickRoof = false;
|
||||
public SlateRef<bool> allowThinRoof = true;
|
||||
|
||||
protected override bool TestRunInt(Slate slate)
|
||||
{
|
||||
@@ -35,13 +37,6 @@ namespace WulaFallenEmpire
|
||||
return false;
|
||||
}
|
||||
|
||||
var compProps = thingDef.GetValue(slate).comps?.OfType<CompProperties_PrefabSkyfallerCaller>().FirstOrDefault();
|
||||
if (compProps == null)
|
||||
{
|
||||
Log.Warning($"[QuestNode] ThingDef {thingDef.GetValue(slate).defName} does not have CompProperties_PrefabSkyfallerCaller");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -56,6 +51,8 @@ namespace WulaFallenEmpire
|
||||
Map targetMap = map.GetValue(slate) ?? Find.CurrentMap;
|
||||
bool doSendMessageOnSuccess = sendMessageOnSuccess.GetValue(slate);
|
||||
bool doSendMessageOnFailure = sendMessageOnFailure.GetValue(slate);
|
||||
bool targetAllowThickRoof = allowThickRoof.GetValue(slate);
|
||||
bool targetAllowThinRoof = allowThinRoof.GetValue(slate);
|
||||
|
||||
if (targetThingDef == null)
|
||||
{
|
||||
@@ -69,18 +66,10 @@ namespace WulaFallenEmpire
|
||||
return;
|
||||
}
|
||||
|
||||
// 获取组件属性
|
||||
var compProps = targetThingDef.comps?.OfType<CompProperties_PrefabSkyfallerCaller>().FirstOrDefault();
|
||||
if (compProps == null)
|
||||
{
|
||||
Log.Error($"[QuestNode] ThingDef {targetThingDef.defName} does not have CompProperties_PrefabSkyfallerCaller");
|
||||
return;
|
||||
}
|
||||
|
||||
Log.Message($"[QuestNode] Attempting to spawn {targetSpawnCount} {targetThingDef.defName} on map {targetMap}");
|
||||
|
||||
// 执行生成
|
||||
int successCount = SpawnThingsAtValidLocations(targetThingDef, targetFaction, targetSpawnCount, targetMap);
|
||||
int successCount = SpawnThingsAtValidLocations(targetThingDef, targetFaction, targetSpawnCount, targetMap, targetAllowThickRoof, targetAllowThinRoof);
|
||||
|
||||
// 发送结果消息
|
||||
if (successCount > 0)
|
||||
@@ -108,23 +97,16 @@ namespace WulaFallenEmpire
|
||||
/// <summary>
|
||||
/// 在有效位置生成多个建筑
|
||||
/// </summary>
|
||||
private int SpawnThingsAtValidLocations(ThingDef thingDef, Faction faction, int spawnCount, Map targetMap)
|
||||
private int SpawnThingsAtValidLocations(ThingDef thingDef, Faction faction, int spawnCount, Map targetMap, bool allowThickRoof, bool allowThinRoof)
|
||||
{
|
||||
int successCount = 0;
|
||||
int attempts = 0;
|
||||
const int maxAttempts = 100; // 最大尝试次数
|
||||
|
||||
var compProps = thingDef.comps.OfType<CompProperties_PrefabSkyfallerCaller>().FirstOrDefault();
|
||||
if (compProps == null)
|
||||
{
|
||||
Log.Error($"[QuestNode] Could not find CompProperties_PrefabSkyfallerCaller for {thingDef.defName}");
|
||||
return 0;
|
||||
}
|
||||
|
||||
for (int i = 0; i < spawnCount && attempts < maxAttempts; i++)
|
||||
{
|
||||
attempts++;
|
||||
IntVec3 spawnPos = FindSpawnPositionForSkyfaller(targetMap, thingDef, compProps);
|
||||
IntVec3 spawnPos = FindSpawnPositionForSkyfaller(targetMap, thingDef, allowThickRoof, allowThinRoof);
|
||||
|
||||
if (spawnPos.IsValid)
|
||||
{
|
||||
@@ -152,7 +134,7 @@ namespace WulaFallenEmpire
|
||||
/// <summary>
|
||||
/// 查找适合Skyfaller空投的位置
|
||||
/// </summary>
|
||||
private IntVec3 FindSpawnPositionForSkyfaller(Map map, ThingDef thingDef, CompProperties_SkyfallerCaller compProps)
|
||||
private IntVec3 FindSpawnPositionForSkyfaller(Map map, ThingDef thingDef, bool allowThickRoof, bool allowThinRoof)
|
||||
{
|
||||
var potentialCells = new List<IntVec3>();
|
||||
|
||||
@@ -160,7 +142,7 @@ namespace WulaFallenEmpire
|
||||
var baseCells = GetOpenAreaCellsNearBase(map, thingDef.Size);
|
||||
foreach (var cell in baseCells)
|
||||
{
|
||||
if (IsValidForSkyfallerDrop(map, cell, thingDef, compProps))
|
||||
if (IsValidForSkyfallerDrop(map, cell, thingDef, allowThickRoof, allowThinRoof))
|
||||
{
|
||||
potentialCells.Add(cell);
|
||||
}
|
||||
@@ -176,7 +158,7 @@ namespace WulaFallenEmpire
|
||||
var openAreas = FindOpenAreas(map, thingDef.Size, 500);
|
||||
foreach (var cell in openAreas)
|
||||
{
|
||||
if (IsValidForSkyfallerDrop(map, cell, thingDef, compProps))
|
||||
if (IsValidForSkyfallerDrop(map, cell, thingDef, allowThickRoof, allowThinRoof))
|
||||
{
|
||||
potentialCells.Add(cell);
|
||||
}
|
||||
@@ -197,7 +179,7 @@ namespace WulaFallenEmpire
|
||||
Rand.Range(thingDef.Size.z, map.Size.z - thingDef.Size.z)
|
||||
);
|
||||
|
||||
if (randomCell.InBounds(map) && IsValidForSkyfallerDrop(map, randomCell, thingDef, compProps))
|
||||
if (randomCell.InBounds(map) && IsValidForSkyfallerDrop(map, randomCell, thingDef, allowThickRoof, allowThinRoof))
|
||||
{
|
||||
potentialCells.Add(randomCell);
|
||||
}
|
||||
@@ -216,7 +198,7 @@ namespace WulaFallenEmpire
|
||||
/// <summary>
|
||||
/// 基于Skyfaller实际行为的有效性检查
|
||||
/// </summary>
|
||||
private bool IsValidForSkyfallerDrop(Map map, IntVec3 cell, ThingDef thingDef, CompProperties_SkyfallerCaller compProps)
|
||||
private bool IsValidForSkyfallerDrop(Map map, IntVec3 cell, ThingDef thingDef, bool allowThickRoof, bool allowThinRoof)
|
||||
{
|
||||
// 1. 检查边界
|
||||
if (!cell.InBounds(map))
|
||||
@@ -230,11 +212,11 @@ namespace WulaFallenEmpire
|
||||
if (!occupiedCell.InBounds(map))
|
||||
return false;
|
||||
|
||||
// 3. 检查厚岩顶 - 绝对不允许
|
||||
// 3. 检查厚岩顶 - 绝对不允许(除非明确允许)
|
||||
RoofDef roof = occupiedCell.GetRoof(map);
|
||||
if (roof != null && roof.isThickRoof)
|
||||
{
|
||||
if (!compProps.allowThickRoof)
|
||||
if (!allowThickRoof)
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -274,7 +256,7 @@ namespace WulaFallenEmpire
|
||||
// 6. 检查薄岩顶和普通屋顶的条件
|
||||
if (roof != null && !roof.isThickRoof)
|
||||
{
|
||||
if (!compProps.allowThinRoof)
|
||||
if (!allowThinRoof)
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,98 @@
|
||||
using System.Collections.Generic;
|
||||
using RimWorld;
|
||||
using Verse;
|
||||
using Verse.AI;
|
||||
|
||||
namespace WulaFallenEmpire
|
||||
{
|
||||
// 扩展方法,用于检查特定种族
|
||||
public static class WorkGiverExtensions
|
||||
{
|
||||
// 检查是否为指定种族
|
||||
public static bool IsRace(this Pawn pawn, string raceDefName)
|
||||
{
|
||||
return pawn.def.defName == raceDefName;
|
||||
}
|
||||
|
||||
// 检查是否为指定种族之一
|
||||
public static bool IsAnyRace(this Pawn pawn, params string[] raceDefNames)
|
||||
{
|
||||
string pawnRace = pawn.def.defName;
|
||||
foreach (string race in raceDefNames)
|
||||
{
|
||||
if (pawnRace == race)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// 使用扩展方法的子类
|
||||
public class WorkGiver_DeepDrill_WulaCatConstructor : WorkGiver_DeepDrill
|
||||
{
|
||||
private const string AllowedRace = "Mech_WULA_Cat_Constructor";
|
||||
|
||||
public override bool ShouldSkip(Pawn pawn, bool forced = false)
|
||||
{
|
||||
|
||||
// 检查种族
|
||||
if (!pawn.IsRace(AllowedRace))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
// 调用基类方法
|
||||
bool shouldSkip = base.ShouldSkip(pawn, forced);
|
||||
|
||||
return shouldSkip;
|
||||
}
|
||||
|
||||
public override bool HasJobOnThing(Pawn pawn, Thing t, bool forced = false)
|
||||
{
|
||||
// 检查种族
|
||||
if (!pawn.IsRace(AllowedRace))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
// 调用基类方法
|
||||
bool hasJob = base.HasJobOnThing(pawn, t, forced);
|
||||
|
||||
return hasJob;
|
||||
}
|
||||
|
||||
// 可选:自定义工作优先级
|
||||
public override float GetPriority(Pawn pawn, TargetInfo t)
|
||||
{
|
||||
if (!pawn.IsRace(AllowedRace))
|
||||
{
|
||||
return 0f; // 不是允许的种族,优先级为0
|
||||
}
|
||||
|
||||
// 如果是允许的种族,提高优先级
|
||||
float basePriority = base.GetPriority(pawn, t);
|
||||
return basePriority * 1.5f; // 提高50%优先级
|
||||
}
|
||||
|
||||
// 可选:提供自定义的工作描述
|
||||
public override Job JobOnThing(Pawn pawn, Thing t, bool forced = false)
|
||||
{
|
||||
if (!pawn.IsRace(AllowedRace))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
Job job = base.JobOnThing(pawn, t, forced);
|
||||
if (job != null)
|
||||
{
|
||||
// 可以在这里添加自定义标签或其他修改
|
||||
job.playerForced = forced;
|
||||
}
|
||||
|
||||
return job;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -74,6 +74,7 @@
|
||||
<ItemGroup>
|
||||
<Compile Include="Ability\CompAbilityEffect_LaunchMultiProjectile.cs" />
|
||||
<Compile Include="Ability\CompAbilityEffect_ResearchPrereq.cs" />
|
||||
<Compile Include="Ability\CompAbilityEffect_RequiresNonHostility.cs" />
|
||||
<Compile Include="Ability\WULA_AbilityAreaDestruction\CompAbilityEffect_AreaDestruction.cs" />
|
||||
<Compile Include="Ability\WULA_AbilityAreaDestruction\CompProperties_AbilityAreaDestruction.cs" />
|
||||
<Compile Include="Ability\WULA_AbilityBombardment\CompAbilityEffect_Bombardment.cs" />
|
||||
@@ -359,6 +360,7 @@
|
||||
<Compile Include="Verb\MeleeAttack_Cleave\Verb_MeleeAttack_Cleave.cs" />
|
||||
<Compile Include="Verb\Verb_ShootShotgunWithOffset.cs" />
|
||||
<Compile Include="Verb\Verb_ShootWithOffset.cs" />
|
||||
<Compile Include="WorkGiver\WorkGiver_DeepDrill_WulaConstructor.cs" />
|
||||
<Compile Include="WulaFallenEmpireMod.cs" />
|
||||
<Compile Include="WulaDefOf.cs" />
|
||||
<Compile Include="HediffComp\HediffComp_DamageResponse.cs" />
|
||||
|
||||