public override void Apply()
        {
            GearLookValue gv;
            if (!_storage.TryGetValue(_controller.selectedPageId, out gv))
                gv = _default;

            if (tween && UIPackage._constructing == 0 && !disableAllTweenEffect)
            {
                _owner._gearLocked = true;
                _owner.grayed = gv.grayed;
                _owner._gearLocked = false;

                if (tweener != null)
                {
                    if (_tweenTarget.alpha != gv.alpha || _tweenTarget.rotation != gv.rotation)
                    {
                        tweener.Kill(true);
                        tweener = null;
                    }
                    else
                        return;
                }

                bool a = gv.alpha != _owner.alpha;
                bool b = gv.rotation != _owner.rotation;
                if (a || b)
                {
                    _owner.internalVisible++;
                    _tweenTarget = gv;

                    tweener = DOTween.To(() => new Vector2(_owner.alpha, _owner.rotation), val =>
                    {
                        _owner._gearLocked = true;
                        if (a)
                            _owner.alpha = val.x;
                        if (b)
                            _owner.rotation = val.y;
                        _owner._gearLocked = false;
                    }, new Vector2(gv.alpha, gv.rotation), tweenTime)
                    .SetEase(easeType)
                    .SetUpdate(true)
                    .OnComplete(() =>
                    {
                        tweener = null;
                        _owner.internalVisible--;
                    });

                    if (delay > 0)
                        tweener.SetDelay(delay);
                }
            }
            else
            {
                _owner._gearLocked = true;
                _owner.alpha = gv.alpha;
                _owner.rotation = gv.rotation;
                _owner.grayed = gv.grayed;
                _owner._gearLocked = false;
            }
        }
示例#2
0
 override protected void AddStatus(string pageId, string value)
 {
     string[] arr = value.Split(jointChar0);
     if (pageId == null)
     {
         _default.alpha = float.Parse(arr[0]);
         _default.rotation = float.Parse(arr[1]);
         _default.grayed = int.Parse(arr[2]) == 1;
     }
     else
         _storage[pageId] = new GearLookValue(float.Parse(arr[0]), float.Parse(arr[1]), int.Parse(arr[2]) == 1);
 }
示例#3
0
 override protected void AddStatus(string pageId, string value)
 {
     string[] arr = value.Split(jointChar0);
     if (pageId == null)
     {
         _default.alpha    = float.Parse(arr[0]);
         _default.rotation = float.Parse(arr[1]);
         _default.grayed   = int.Parse(arr[2]) == 1;
     }
     else
     {
         _storage[pageId] = new GearLookValue(float.Parse(arr[0]), float.Parse(arr[1]), int.Parse(arr[2]) == 1);
     }
 }
示例#4
0
        override protected void AddStatus(string pageId, ByteBuffer buffer)
        {
            GearLookValue gv;

            if (pageId == null)
            {
                gv = _default;
            }
            else
            {
                gv = new GearLookValue(0, 0, false, false);
                _storage[pageId] = gv;
            }

            gv.alpha     = buffer.ReadFloat();
            gv.rotation  = buffer.ReadFloat();
            gv.grayed    = buffer.ReadBool();
            gv.touchable = buffer.ReadBool();
        }
示例#5
0
        override protected void AddStatus(string pageId, string value)
        {
            if (value == "-" || value.Length == 0)
            {
                return;
            }

            string[] arr = value.Split(',');
            if (pageId == null)
            {
                _default.alpha    = float.Parse(arr[0]);
                _default.rotation = float.Parse(arr[1]);
                _default.grayed   = int.Parse(arr[2]) == 1;
                if (arr.Length > 3)
                {
                    _default.touchable = int.Parse(arr[3]) == 1;
                }
            }
            else
            {
                _storage[pageId] = new GearLookValue(float.Parse(arr[0]), float.Parse(arr[1]), int.Parse(arr[2]) == 1,
                                                     arr.Length < 4 ? _owner.touchable : (int.Parse(arr[3]) == 1));
            }
        }
 protected override void Init()
 {
     _default = new GearLookValue(_owner.alpha, _owner.rotation, _owner.grayed);
     _storage = new Dictionary<string, GearLookValue>();
 }
示例#7
0
 protected override void Init()
 {
     _default = new GearLookValue(_owner.alpha, _owner.rotation, _owner.grayed);
     _storage = new Dictionary <string, GearLookValue>();
 }
示例#8
0
        override public void Apply()
        {
            GearLookValue gv;

            if (!_storage.TryGetValue(_controller.selectedPageId, out gv))
            {
                gv = _default;
            }

            if (tween && UIPackage._constructing == 0 && !disableAllTweenEffect)
            {
                _owner._gearLocked = true;
                _owner.grayed      = gv.grayed;
                _owner._gearLocked = false;

                if (tweener != null)
                {
                    if (_tweenTarget.alpha != gv.alpha || _tweenTarget.rotation != gv.rotation)
                    {
                        tweener.Kill(true);
                        tweener = null;
                    }
                    else
                    {
                        return;
                    }
                }

                bool a = gv.alpha != _owner.alpha;
                bool b = gv.rotation != _owner.rotation;
                if (a || b)
                {
                    _owner.internalVisible++;
                    _tweenTarget = gv;

                    tweener = DOTween.To(() => new Vector2(_owner.alpha, _owner.rotation), val =>
                    {
                        _owner._gearLocked = true;
                        if (a)
                        {
                            _owner.alpha = val.x;
                        }
                        if (b)
                        {
                            _owner.rotation = val.y;
                        }
                        _owner._gearLocked = false;
                    }, new Vector2(gv.alpha, gv.rotation), tweenTime)
                              .SetEase(easeType)
                              .SetUpdate(true)
                              .OnComplete(() =>
                    {
                        tweener = null;
                        _owner.internalVisible--;
                    });

                    if (delay > 0)
                    {
                        tweener.SetDelay(delay);
                    }
                }
            }
            else
            {
                _owner._gearLocked = true;
                _owner.alpha       = gv.alpha;
                _owner.rotation    = gv.rotation;
                _owner.grayed      = gv.grayed;
                _owner._gearLocked = false;
            }
        }
示例#9
0
        override public void Apply()
        {
            GearLookValue gv;

            if (!_storage.TryGetValue(_controller.selectedPageId, out gv))
            {
                gv = _default;
            }

            if (tween && UIPackage._constructing == 0 && !disableAllTweenEffect)
            {
                _owner._gearLocked = true;
                _owner.grayed      = gv.grayed;
                _owner._gearLocked = false;

                if (tweener != null)
                {
                    if (_tweenTarget.alpha != gv.alpha || _tweenTarget.rotation != gv.rotation)
                    {
                        tweener.Kill(true);
                        tweener = null;
                    }
                    else
                    {
                        return;
                    }
                }

                bool a = gv.alpha != _owner.alpha;
                bool b = gv.rotation != _owner.rotation;
                if (a || b)
                {
                    if (_owner.CheckGearController(0, _controller))
                    {
                        _displayLockToken = _owner.AddDisplayLock();
                    }
                    _tweenTarget = gv;

                    tweener = DOTween.To(() => new Vector2(_owner.alpha, _owner.rotation), val =>
                    {
                        _owner._gearLocked = true;
                        if (a)
                        {
                            _owner.alpha = val.x;
                        }
                        if (b)
                        {
                            _owner.rotation = val.y;
                        }
                        _owner._gearLocked = false;
                    }, new Vector2(gv.alpha, gv.rotation), tweenTime)
                              .SetEase(easeType)
                              .SetUpdate(true)
                              .OnUpdate(() =>
                    {
                        if (b)
                        {
                            _owner.InvalidateBatchingState();
                        }
                    })
                              .OnComplete(() =>
                    {
                        tweener = null;
                        if (_displayLockToken != 0)
                        {
                            _owner.ReleaseDisplayLock(_displayLockToken);
                            _displayLockToken = 0;
                        }
                        if (b)
                        {
                            _owner.InvalidateBatchingState();
                        }
                        _owner.OnGearStop.Call(this);
                    });

                    if (delay > 0)
                    {
                        tweener.SetDelay(delay);
                    }
                }
            }
            else
            {
                _owner._gearLocked = true;
                _owner.alpha       = gv.alpha;
                _owner.rotation    = gv.rotation;
                _owner.grayed      = gv.grayed;
                _owner._gearLocked = false;
            }
        }