public override void OnBehaviourPause(Playable playable, UnityEngine.Playables.FrameData info)
 {
     if (director != null && director.playableAsset != null)
     {
         SyncWeight(info.effectiveWeight);
         director.Stop();
     }
 }
 public override void ProcessFrame(Playable playable, UnityEngine.Playables.FrameData info, object userData)
 {
     if (gameObject != null)
     {
         gameObject.SetActive(value: true);
         m_InitialState = InitialState.Active;
     }
 }
 public override void OnBehaviourPlay(Playable playable, UnityEngine.Playables.FrameData info)
 {
     if (!(gameObject == null))
     {
         gameObject.SetActive(value: true);
         m_InitialState = InitialState.Active;
     }
 }
 public override void OnBehaviourPlay(Playable playable, UnityEngine.Playables.FrameData info)
 {
     m_SyncTime = true;
     if (director != null && director.playableAsset != null)
     {
         m_AssetDuration = director.playableAsset.duration;
         SyncWeight(info.effectiveWeight);
     }
 }
 public override void PrepareFrame(Playable playable, UnityEngine.Playables.FrameData info)
 {
     if (!(director == null) && director.isActiveAndEnabled && !(director.playableAsset == null))
     {
         m_SyncTime |= (info.evaluationType == UnityEngine.Playables.FrameData.EvaluationType.Evaluate || DetectDiscontinuity(playable, info));
         SyncSpeed((double)info.effectiveSpeed);
         SyncPlayState(playable.GetGraph(), playable.GetTime());
         SyncWeight(info.effectiveWeight);
     }
 }
 public override void OnBehaviourPause(Playable playable, UnityEngine.Playables.FrameData info)
 {
     if (!(gameObject == null) &&
         ((info.seekOccurred && info.evaluationType == UnityEngine.Playables.FrameData.EvaluationType.Evaluate) ||
          (info.deltaTime > 0 && playable.GetGraph().IsPlaying())))
     {
         gameObject.SetActive(value: false);
         m_InitialState = InitialState.Inactive;
     }
 }
 public override void ProcessFrame(Playable playable, UnityEngine.Playables.FrameData info, object playerData)
 {
     if (!(director == null) && director.isActiveAndEnabled && !(director.playableAsset == null))
     {
         if (m_SyncTime || DetectOutOfSync(playable))
         {
             UpdateTime(playable);
             director.Evaluate();
         }
         m_SyncTime = false;
         SyncWeight(info.effectiveWeight);
     }
 }
 private bool DetectDiscontinuity(Playable playable, UnityEngine.Playables.FrameData info)
 {
     return(Math.Abs(playable.GetTime() - playable.GetPreviousTime() - info.deltaTime * (double)info.effectiveWeight) > 1E-12);
 }