Ejemplo n.º 1
0
    private void SetPosBasedOnEnum(TransitionSwipeEndPosition endPosType)
    {
        switch (endPosType)
        {
        case TransitionSwipeEndPosition.MIDDLE_START:
            _currentPosition = _middlePosition;
            _nextPosition    = _startPosition;
            break;

        case TransitionSwipeEndPosition.START_MIDDLE:
            _currentPosition = _startPosition;
            _nextPosition    = _middlePosition;
            break;

        case TransitionSwipeEndPosition.END_MIDDLE:
            _currentPosition = _endPosition;
            _nextPosition    = _middlePosition;
            break;

        case TransitionSwipeEndPosition.MIDDLE_END:
            _currentPosition = _middlePosition;
            _nextPosition    = _endPosition;
            break;
        }
    }
Ejemplo n.º 2
0
    public IEnumerator _Transition(bool fadeIn, TransitionSwipeEndPosition endPosType, SceneManagementTypes?type = null, int?index = null, string sceneName = null)
    {
        Time.timeScale = 1f;
        SetPosBasedOnEnum(endPosType);

        var progress = 0f;

        while (progress < 1f)
        {
            progress += Time.deltaTime / _transitionDuration;
            _image.GetComponent <RectTransform>().anchoredPosition = Vector2.Lerp(_currentPosition, _nextPosition, _animationCurve.Evaluate(progress));
            yield return(null);
        }

        LevelSwitchType(fadeIn, type, index, sceneName);
    }