This commit is contained in:
2025-10-30 12:35:46 +08:00
parent db5709ff3f
commit d1593a6063
24 changed files with 82 additions and 58 deletions

Binary file not shown.

View File

@@ -642,30 +642,6 @@
</recipes>
<comps>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.DrawFaceGraphicsComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.HeadControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.EyeballControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.LidControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.BrowControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.MouthControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.SkinControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.FacialAnimationControllerComp</compClass>
</li>
<li Class="ArachnaeSwarm.CompProperties_HediffGiver">
<hediffs>
<li>ARA_HiveMindDrone</li>
@@ -2110,30 +2086,6 @@
</race>
<comps Inherit="false">
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.DrawFaceGraphicsComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.HeadControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.EyeballControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.LidControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.BrowControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.MouthControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.SkinControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.FacialAnimationControllerComp</compClass>
</li>
<li Class="ArachnaeSwarm.CompProperties_HediffGiver">
<hediffs>
<li>ARA_HiveStrength_Low</li>

View File

@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="utf-8"?>
<Patch>
<!-- Add to ARA_NodeBase -->
<Operation Class="PatchOperationAdd" MayRequire="Nals.FacialAnimation">
<xpath>/Defs/AlienRace.ThingDef_AlienRace[@Name="ARA_NodeBase"]/comps</xpath>
<value>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.DrawFaceGraphicsComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.HeadControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.EyeballControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.LidControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.BrowControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.MouthControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.SkinControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.FacialAnimationControllerComp</compClass>
</li>
</value>
</Operation>
<!-- Add to ArachnaeNode_Race_MimicNematode -->
<Operation Class="PatchOperationAdd" MayRequire="Nals.FacialAnimation">
<xpath>/Defs/AlienRace.ThingDef_AlienRace[defName="ArachnaeNode_Race_MimicNematode"]/comps</xpath>
<value>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.DrawFaceGraphicsComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.HeadControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.EyeballControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.LidControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.BrowControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.MouthControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.SkinControllerComp</compClass>
</li>
<li MayRequire="Nals.FacialAnimation">
<compClass>FacialAnimation.FacialAnimationControllerComp</compClass>
</li>
</value>
</Operation>
</Patch>

View File

@@ -1,6 +1,7 @@
<loadFolders>
<v1.6>
<li>1.6/1.6</li>
<li IfModActive="Nals.FacialAnimation">1.6/FA</li>
<li>Content</li>
</v1.6>
</loadFolders>

View File

@@ -16,6 +16,13 @@ namespace ArachnaeSwarm
static FaceAnimationFileGenerator()
{
// 检查 Nals.FacialAnimation 是否被加载
if (!LoadedModManager.RunningMods.Any(m => m.PackageId == "Nals.FacialAnimation"))
{
Log.Message("[Arachnae Swarm] Facial Animation mod not found. Skipping animation file generation.");
return; // 如果未加载,则直接退出,不执行任何操作
}
GenerateAllFaceAnimationFiles();
}
@@ -40,39 +47,39 @@ namespace ArachnaeSwarm
{
{
"ArachnaeNode_Race_Myrmecocystus",
new List<string> { "1.6/1.6/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
new List<string> { "1.6/FA/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
},
{
"ArachnaeNode_Race_ShieldHead",
new List<string> { "1.6/1.6/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
new List<string> { "1.6/FA/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
},
{
"ArachnaeNode_Race_WeaponSmith",
new List<string> { "1.6/1.6/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
new List<string> { "1.6/FA/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
},
{
"ArachnaeNode_Race_Fighter",
new List<string> { "1.6/1.6/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
new List<string> { "1.6/FA/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
},
{
"ArachnaeNode_Race_Facehugger",
new List<string> { "1.6/1.6/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
new List<string> { "1.6/FA/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
},
{
"ArachnaeNode_Race_Smokepop",
new List<string> { "1.6/1.6/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
new List<string> { "1.6/FA/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
},
{
"ArachnaeNode_Race_NeuroSwarm",
new List<string> { "1.6/1.6/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
new List<string> { "1.6/FA/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
},
{
"ArachnaeNode_Race_Praetorian",
new List<string> { "1.6/1.6/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
new List<string> { "1.6/FA/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
},
{
"ArachnaeNode_Race_Skyraider",
new List<string> { "1.6/1.6/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
new List<string> { "1.6/FA/Defs/AnimationDefs/FacialAnimation/ARA_JobAnim.xml" }
}
};