Refactor IsCachedPoseConnection to extract NodeMatchesType helper

Co-authored-by: LoogLong <86428208+LoogLong@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-03-05 02:35:28 +00:00
parent d6efa832c4
commit 2b83e97585

View File

@@ -931,21 +931,20 @@ public partial class AnimGraphViewer
/// </summary>
private static bool IsCachedPoseConnection(AnimGraphConnection conn)
{
var srcType = conn.SourceNode.ExportType;
var tgtType = conn.TargetNode.ExportType;
var srcIsSave = srcType.Contains("SaveCachedPose", StringComparison.OrdinalIgnoreCase) ||
conn.SourceNode.Name.Contains("SaveCachedPose", StringComparison.OrdinalIgnoreCase);
var srcIsUse = srcType.Contains("UseCachedPose", StringComparison.OrdinalIgnoreCase) ||
conn.SourceNode.Name.Contains("UseCachedPose", StringComparison.OrdinalIgnoreCase);
var tgtIsSave = tgtType.Contains("SaveCachedPose", StringComparison.OrdinalIgnoreCase) ||
conn.TargetNode.Name.Contains("SaveCachedPose", StringComparison.OrdinalIgnoreCase);
var tgtIsUse = tgtType.Contains("UseCachedPose", StringComparison.OrdinalIgnoreCase) ||
conn.TargetNode.Name.Contains("UseCachedPose", StringComparison.OrdinalIgnoreCase);
var srcIsSave = NodeMatchesType(conn.SourceNode, "SaveCachedPose");
var srcIsUse = NodeMatchesType(conn.SourceNode, "UseCachedPose");
var tgtIsSave = NodeMatchesType(conn.TargetNode, "SaveCachedPose");
var tgtIsUse = NodeMatchesType(conn.TargetNode, "UseCachedPose");
return (srcIsSave && tgtIsUse) || (srcIsUse && tgtIsSave);
}
private static bool NodeMatchesType(AnimGraphNode node, string typeFragment)
{
return node.ExportType.Contains(typeFragment, StringComparison.OrdinalIgnoreCase) ||
node.Name.Contains(typeFragment, StringComparison.OrdinalIgnoreCase);
}
/// <summary>
/// Computes the shortest straight-line connection points between two node edges.
/// For state nodes (rounded rectangles) and entry nodes (circles), finds the