using ChivaXR; using ChivaXR.Op; using ChivaXR.VR; using System.Collections; using System.Collections.Generic; using UnityEngine; using VRTK.Controllables.PhysicsBased; public class CreateProcessManagerByAnimationDataEditor : MonoBehaviour { #if UNITY_EDITOR public AnimationDataEditor m_AnimationDataEditor; [ContextMenu("创建ProcessManagerByAniDataEditor")] public void CreateProcessManagerByAniDataEditor() { if (m_AnimationDataEditor == null) return; for (int i = 0; i < m_AnimationDataEditor.animationEditorDatas.Count; i++) { OpTrigger_VRObjTriggerElement opTrigger_VRObjTriggerElement = new GameObject(m_AnimationDataEditor.animationEditorDatas[i].AniDataContainer.aniData.aniName).AddComponent(); opTrigger_VRObjTriggerElement.transform.parent = OperationManager.Instance.transform; opTrigger_VRObjTriggerElement.operationName = m_AnimationDataEditor.animationEditorDatas[i].AniDataContainer.aniData.aniName; opTrigger_VRObjTriggerElement.operationDescription = opTrigger_VRObjTriggerElement.operationName; opTrigger_VRObjTriggerElement.RegisterData(); ProcessElement process = new GameObject(opTrigger_VRObjTriggerElement.operationName).AddComponent(); process.transform.parent=ProcessManagement.Instance.transform; process.stepID = i + 1; PB_OpData pB_OpData = process.gameObject.AddComponent(); process.processBase = pB_OpData; pB_OpData.opData = new OpDataInfo(); pB_OpData.opData.operationDataName = opTrigger_VRObjTriggerElement.operationName; pB_OpData.opData.aniDataName = opTrigger_VRObjTriggerElement.operationName; } ProcessManagement.Instance.UpdateProcesses(); } [ContextMenu("创建ProcessManagerByAniDataEditor")] public void CreatePCProcessManagerByAniDataEditor() { if (m_AnimationDataEditor == null) return; for (int i = 0; i < m_AnimationDataEditor.animationEditorDatas.Count; i++) { OpTrigger_ToolPack opTrigger_ToolPack = new GameObject(m_AnimationDataEditor.animationEditorDatas[i].AniDataContainer.aniData.aniName).AddComponent(); opTrigger_ToolPack.transform.parent = OperationManager.Instance.transform; opTrigger_ToolPack.operationName = m_AnimationDataEditor.animationEditorDatas[i].AniDataContainer.aniData.aniName; opTrigger_ToolPack.operationDescription = opTrigger_ToolPack.operationName; opTrigger_ToolPack.RegisterData(); ProcessElement process = new GameObject(opTrigger_ToolPack.operationName).AddComponent(); process.transform.parent = ProcessManagement.Instance.transform; process.stepID = i + 1; PB_OpData pB_OpData = process.gameObject.AddComponent(); process.processBase = pB_OpData; pB_OpData.opData = new OpDataInfo(); pB_OpData.opData.operationDataName = opTrigger_ToolPack.operationName; pB_OpData.opData.aniDataName = opTrigger_ToolPack.operationName; } ProcessManagement.Instance.UpdateProcesses(); } #endif }