public override void OnEnter() { if (timelineAsset == null) { Continue(); return; } if (_inSceneTarget != FungusExt.AdvTargetObject.SelectedGameObject) { _target0 = AdvManager.Instance.GetAdvTargetObject(_inSceneTarget); } if (_target0 == null) { AdvUtility.LogWarning("> Timeline 指定的立繪已經不存在,因此跳過指令 "); Continue(); return; } if (playableDirectors == null) { PlayableDirector tempDirector = new GameObject("tempDirector").AddComponent <PlayableDirector>(); tempDirector.stopped += delegate { Destroy(tempDirector.gameObject); }; playableDirectors = tempDirector; } playableDirectors.playableAsset = timelineAsset; playableDirectors.SetBindingGameObject("Target0", _target0); playableDirectors.Play(timelineAsset); if (WaitForFinished) { playableDirectors.stopped += delegate { Continue(); }; } else { Continue(); } }