コード例 #1
0
        private IEnumerator RepeatSearchAudio()
        {
            while (true)
            {
                _audioControl.FadeIn(_srcSearching, TIME_BACKGROUND_FADE);

                yield return(_repeatAudioDelay.Restart());

                _audioControl.FadeIn(_srcSearching, TIME_BACKGROUND_FADE);

                yield return(_repeatAudioDelay.Restart());

                yield return(_repeatAudioIntervalDelay.Restart());
            }
        }
コード例 #2
0
        private IEnumerator AnimateIconSpinner()
        {
            // Set initial animation state
            _animationProgress = 0f;
            _animatedDividerTransform.sizeDelta = new Vector2(0, _animatedDividerTransform.sizeDelta.y);
            _animatedDividerTransform.gameObject.SetActive(true);
            _animatedDividerCanvasGroup.alpha = 1f;

            while (true)
            {
                _animationProgress += Time.unscaledDeltaTime;
                if (_animationProgress > _animationDuration)
                {
                    _animationProgress -= _animationDuration;
                    yield return(_waitAnimationDelay.Restart());
                }

                var animationWidthProgress = _animationWidthCurve.Evaluate(_animationProgress / _animationDuration);
                var animationScaleProgress = _animationAlphaCurve.Evaluate(_animationProgress / _animationDuration);

                var newWidth = _parentRectTransform.rect.width * animationWidthProgress;
                var newAlpha = (1f - animationScaleProgress) * 1f;

                _animatedDividerTransform.sizeDelta = new Vector2(newWidth, _parentRectTransform.rect.height);
                _animatedDividerCanvasGroup.alpha   = newAlpha;

                yield return(Wait.ForEndOfFrame);
            }
        }
コード例 #3
0
        private IEnumerator ShowSuccess()
        {
            PlaySuccessSting();

            Show();

            yield return(_wait.Restart());

            Hide();
        }