Files
7d2dXG/Mods/0A-KFCommonUtilityLib/KFAttached/RigAdaptors/ReverseAdaptors/MultiReferentialConstraintReverseAdaptor.cs
Nathaniel Cosford 062dfab2cd Patched
2025-05-30 01:04:40 +09:30

38 lines
1.1 KiB
C#

using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Animations.Rigging;
[AddComponentMenu("")]
public class MultiReferentialConstraintReverseAdaptor : RigAdaptorAbs
{
[SerializeField]
private int m_Driver;
[SerializeField]
private List<string> m_SourceObjects;
public override void FindRigTargets()
{
var constraint = GetComponent<MultiReferentialConstraint>();
constraint.Reset();
constraint.weight = weight;
constraint.data.driver = m_Driver;
constraint.data.sourceObjects = new List<Transform>();
foreach(var sourceObject in m_SourceObjects)
{
constraint.data.sourceObjects.Add(targetRoot.FindInAllChildren(sourceObject));
}
}
public override void ReadRigData()
{
var constraint = GetComponent<MultiReferentialConstraint>();
weight = constraint.weight;
m_Driver = constraint.data.driver;
m_SourceObjects = new List<string>();
foreach (var sourceObject in constraint.data.sourceObjects)
{
m_SourceObjects.Add(sourceObject?.name);
}
}
}