mirror of
https://github.com/bdunderscore/modular-avatar.git
synced 2025-04-24 13:29:01 +08:00
feat: ShapeChanger target migration
This commit is contained in:
parent
8c70aa74d0
commit
089389e0db
@ -49,6 +49,9 @@ namespace nadena.dev.modular_avatar.core
|
|||||||
[HelpURL("https://modular-avatar.nadena.dev/docs/reference/shape-changer?lang=auto")]
|
[HelpURL("https://modular-avatar.nadena.dev/docs/reference/shape-changer?lang=auto")]
|
||||||
public class ModularAvatarShapeChanger : ReactiveComponent
|
public class ModularAvatarShapeChanger : ReactiveComponent
|
||||||
{
|
{
|
||||||
|
[SerializeField] [FormerlySerializedAs("targetRenderer")] [HideInInspector]
|
||||||
|
private AvatarObjectReference m_targetRenderer = new();
|
||||||
|
|
||||||
[SerializeField] [FormerlySerializedAs("Shapes")]
|
[SerializeField] [FormerlySerializedAs("Shapes")]
|
||||||
private List<ChangedShape> m_shapes = new();
|
private List<ChangedShape> m_shapes = new();
|
||||||
|
|
||||||
@ -65,5 +68,33 @@ namespace nadena.dev.modular_avatar.core
|
|||||||
shape.Object?.Get(this);
|
shape.Object?.Get(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void OnEnable()
|
||||||
|
{
|
||||||
|
MigrateTargetRenderer();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void OnValidate()
|
||||||
|
{
|
||||||
|
base.OnValidate();
|
||||||
|
MigrateTargetRenderer();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void MigrateTargetRenderer()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(m_targetRenderer.referencePath) || m_targetRenderer.targetObject != null)
|
||||||
|
{
|
||||||
|
foreach (var shape in m_shapes)
|
||||||
|
{
|
||||||
|
if (string.IsNullOrEmpty(shape.Object.referencePath) && shape.Object.targetObject == null)
|
||||||
|
{
|
||||||
|
shape.Object.referencePath = m_targetRenderer.referencePath;
|
||||||
|
shape.Object.targetObject = m_targetRenderer.targetObject;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
m_targetRenderer.referencePath = null;
|
||||||
|
m_targetRenderer.targetObject = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user