This commit is contained in:
Jeremy Pritts 2023-03-01 22:38:57 -05:00
parent 4dfdfb36ef
commit 7da28c9aa9
2 changed files with 9 additions and 5 deletions

View File

@ -33,8 +33,10 @@ namespace AssetRipper.SourceGenerated.Extensions
childMotion.TimeScale = 1.0f;
childMotion.CycleOffset = node.CycleOffset;
uint directID = node.GetDirectBlendParameter(childIndex);
childMotion.DirectBlendParameter?.CopyValues(controller.TOS_C91[directID]);
if(node.TryGetDirectBlendParameter(childIndex, out uint directID))
{
childMotion.DirectBlendParameter?.CopyValues(controller.TOS_C91[directID]);
}
childMotion.Mirror = node.Mirror;

View File

@ -49,13 +49,15 @@ namespace AssetRipper.SourceGenerated.Extensions
return 1.0f;
}
public static uint GetDirectBlendParameter(this IBlendTreeNodeConstant constant, int index)
public static bool TryGetDirectBlendParameter(this IBlendTreeNodeConstant constant, int index, out uint parameter)
{
if (constant.Has_BlendDirectData() && constant.GetBlendType() == BlendTreeType.Direct)
{
return constant.BlendDirectData.Data.m_ChildBlendEventIDArray[index];
parameter = constant.BlendDirectData.Data.m_ChildBlendEventIDArray[index];
return true;
}
return 0;
parameter = default;
return false;
}
public static bool IsBlendTree(this IBlendTreeNodeConstant constant) => constant.ChildIndices.Length > 0;