using System.Collections; using System.Collections.Generic; using UnityEngine; using ChivaXR; using System; public class AniDriver_WaitFrameToActiveObjs : AnimationDriverBase { public int waitFrames; public float aniFPS = 30; public List objs = new List(); public bool activeObjs; public override void FinishedState() { foreach (var item in objs) { item.SetActive(activeObjs); } } public override void InitState() { foreach (var item in objs) { item.SetActive(!activeObjs); } } public override void StartPlay(Action finishedCallBack = null) { StartAniCoroutine(WaitFrame(finishedCallBack)); } IEnumerator WaitFrame(Action finishedCallBack) { yield return new WaitForSeconds(waitFrames / aniFPS); foreach (var item in objs) { item.SetActive(activeObjs); } finishedCallBack?.Invoke(); } }