Пример #1
0
            public bool IsValid()
            {
                switch (_sourceType)
                {
                case eSourceType.Prefab:
                    return(_prefab.IsValid() && !string.IsNullOrEmpty(_objectName));

                case eSourceType.Loaded:
                    return(!string.IsNullOrEmpty(_objectName));

                case eSourceType.Scene:
                default:
                    return(_sceneObjectID != -1 && _scene.IsSceneRefValid());
                }
            }
            private PlayableAsset GetPlayableAsset()
            {
                if (_playableAsset.IsValid())
                {
#if UNITY_EDITOR
                    return(_playableAsset._editorAsset);
#else
                    return(_playableAsset.LoadAsset());
#endif
                }
                else
                {
                    PlayableDirector playableDirector = _director.GetComponent();
                    return(playableDirector.playableAsset);
                }
            }
Пример #3
0
            public override void OnStartConditionChecking(StateMachineComponent stateMachine)
            {
                _playableDirector = _director.GetComponent();

                if (_playableDirector != null)
                {
                    if (_playableAsset.IsValid())
                    {
                        PlayableAsset playable = _playableAsset.LoadAsset();
                        _playableDirector.Play(playable, _wrapMode);
                    }
                    else
                    {
                        _playableDirector.Play(_playableDirector.playableAsset, _wrapMode);
                    }
                }
            }
            public eEventTriggerReturn Trigger(StateMachineComponent stateMachine)
            {
                PlayableDirector director = _director.GetComponent();

                if (director != null)
                {
                    if (_playableAsset.IsValid())
                    {
                        PlayableAsset playable = _playableAsset.LoadAsset();
                        director.Play(playable, _wrapMode);
                    }
                    else
                    {
                        director.Play(director.playableAsset, _wrapMode);
                    }
                }

                return(eEventTriggerReturn.EventFinished);
            }
Пример #5
0
 public bool IsValid()
 {
     return(_stateId != -1 || _file.IsValid());
 }