//=====================================================================================================================//
        //================================================== Editing Methods ==================================================//
        //=====================================================================================================================//

        #region Editing Methods

        private void ClearAllExcept(IGameEventTarget target)
        {
            if (target != _gameObjectTarget)
            {
                _gameObjectTarget = null;
            }

            if (target != _timelineTarget)
            {
                _timelineTarget = null;
            }

            if (target != _eventTarget)
            {
                _eventTarget = null;
            }

            if (target != _animatorTarget)
            {
                _animatorTarget = null;
            }

            if (target != _behaviourTarget)
            {
                _behaviourTarget = null;
            }
        }
        //=====================================================================================================================//
        //=================================================== Public Methods ==================================================//
        //=====================================================================================================================//

        #region Public Methods

        public static GameEventTarget Clone(GameEventTarget original)
        {
            if (original == null)
            {
                return(null);
            }

            var newTarget = new GameEventTarget {
                _targetType = original._targetType,

                _animatorTarget   = AnimatorTarget.Clone(original._animatorTarget),
                _behaviourTarget  = BehaviourTarget.Clone(original._behaviourTarget),
                _eventTarget      = EventIDTarget.Clone(original._eventTarget),
                _gameObjectTarget = GameObjectTarget.Clone(original._gameObjectTarget),
                _timelineTarget   = TimelineTarget.Clone(original._timelineTarget),

                _replayOnLoad = original._replayOnLoad,
                _isMuted      = original._isMuted
            };

            return(newTarget);
        }
Exemple #3
0
        //=====================================================================================================================//
        //=================================================== Public Methods ==================================================//
        //=====================================================================================================================//

        #region Public Methods

        public static BehaviourTarget Clone(BehaviourTarget original)
        {
            if (original == null)
            {
                return(null);
            }

            var newTarget = new BehaviourTarget {
                behaviour   = original.behaviour,
                action      = original.action,
                _gameObject = original._gameObject,
                _methodName = original._methodName,
                _methodIdx  = original._methodIdx,
                _methodArg  = CallbackParameter.Clone(original._methodArg),
                type        = original.type,
                cloth       = original.cloth,
                lodGroup    = original.lodGroup,
                collider    = original.collider,
                renderer    = original.renderer
            };

            return(newTarget);
        }
        //=====================================================================================================================//
        //=================================================== Public Methods ==================================================//
        //=====================================================================================================================//

        #region Public Methods

        public static BehaviourTarget Clone(BehaviourTarget original)
        {
            if (original == null)
            {
                return(null);
            }

            var newTarget = new BehaviourTarget {
                _behaviour  = original._behaviour,
                _action     = original._action,
                _gameObject = original._gameObject,
                _methodName = original._methodName,
                _methodIdx  = original._methodIdx,
                _methodArg  = CallbackParameter.Clone(original._methodArg),
                _type       = original._type,
                _cloth      = original._cloth,
                _lodGroup   = original._lodGroup,
                _collider   = original._collider,
                _renderer   = original._renderer
            };

            return(newTarget);
        }