Beispiel #1
0
 void Show()
 {
     if (_curMessage == null)
     {
         ProcessState();
         return;
     }
     BBTTransform.gameObject.SetActive(true);
     TextField.text = _curMessage.Text;
     _state         = StripeState.MovingDown;
     _seq           = TweenHelper.ReplaceSequence(_seq);
     _seq.Append(BBTTransform.DOLocalMove(ShownPos, _moveTime));
     _seq.AppendCallback(() => { _state = StripeState.Shown; });
     _seq.AppendInterval(_curMessage.ShowTime);
     _seq.AppendCallback(() => { _state = StripeState.MovingUp; });
     _seq.Append(BBTTransform.DOLocalMove(RetractedPos, _moveTime));
     _seq.AppendCallback(() => { _state = StripeState.Retracted; _curMessage = null; BBTTransform.gameObject.SetActive(false); ProcessState(); });
 }
Beispiel #2
0
    void Update()
    {
        if (stripeRect == null)
        {
            return;
        }

        if (selected)
        {
            if (stripeState == StripeState.Entered)
            {
                return;
            }
            else if (stripeState == StripeState.Entering)
            {
                Vector2 curPosition = stripeRect.anchoredPosition;
                curPosition.x += stripSpeed;
                if (curPosition.x > 0)
                {
                    curPosition.x = 0;
                    stripeState   = StripeState.Entered;
                }
                stripeRect.anchoredPosition = curPosition;
            }
            else if (stripeState == StripeState.Exiting)
            {
                Vector2 curPosition = stripeRect.anchoredPosition;
                curPosition.x -= stripSpeed;
                if (curPosition.x < 0)
                {
                    curPosition.x = 0;
                    stripeState   = StripeState.Entered;
                }
                stripeRect.anchoredPosition = curPosition;
            }
            else if (stripeState == StripeState.Exited)
            {
                stripeImage.enabled = true;
                Vector2 curPosition = stripeRect.anchoredPosition;
                curPosition.x = stripRectStart;
                stripeState   = StripeState.Entering;
                stripeRect.anchoredPosition = curPosition;
            }
        }
        else
        {
            if (stripeState == StripeState.Exited)
            {
                return;
            }
            else if (stripeState == StripeState.Entering)
            {
                Vector2 curPosition = stripeRect.anchoredPosition;
                curPosition.x -= stripSpeed;
                if (curPosition.x < stripRectStart)
                {
                    curPosition.x       = stripRectStart;
                    stripeImage.enabled = false;
                    stripeState         = StripeState.Exited;
                }
                stripeRect.anchoredPosition = curPosition;
            }
            else if (stripeState == StripeState.Exiting)
            {
                Vector2 curPosition = stripeRect.anchoredPosition;
                // Debug.Log($"{curPosition},{stripSpeed},{stripRectEnd}");
                curPosition.x += stripSpeed;
                if (curPosition.x > stripRectEnd)
                {
                    curPosition.x       = stripRectEnd;
                    stripeImage.enabled = false;
                    stripeState         = StripeState.Exited;
                }
                stripeRect.anchoredPosition = curPosition;
            }
            else if (stripeState == StripeState.Entered)
            {
                stripeState = StripeState.Exiting;
            }
        }
    }