Beispiel #1
0
    public void PlayEffect(TransitionEffect effect, float duration, TransitionEffectManager_Callback callback)
    {
        StartCoroutine(CallAfterTime(callback, duration));

        switch (effect)
        {
        case TransitionEffect.BLACK_IN:
            BlackIn(duration);
            break;

        case TransitionEffect.BLACK_OUT:
            BlackOut(duration);
            break;

        default:
            currentTransitionDuration = duration;
            currentTransition         = effect;
            transitionStartTime       = Time.deltaTime;
            break;
        }
    }
Beispiel #2
0
    public void LoadScene(int sceneBuildIndex, bool playBeforeTransition = false, bool playAfterTransition = false)
    {
        TransitionEffectManager_Callback loadSceneCall = delegate()
        {
            SceneManager.LoadScene(sceneBuildIndex);

            if (playAfterTransition)
            {
                transitionEffectManager.PlayOutEffect(delegate() { });
            }
        };

        if (playBeforeTransition)
        {
            transitionEffectManager.PlayInEffect(loadSceneCall);
        }
        else
        {
            loadSceneCall();
        }
    }
Beispiel #3
0
 public void PlayOutEffect(TransitionEffectManager_Callback callback)
 {
     PlayEffect(outEffect, outTransitionDuration, callback);
 }
Beispiel #4
0
 public void PlayInEffect(TransitionEffectManager_Callback callback)
 {
     PlayEffect(inEffect, inTransitionDuration, callback);
 }
Beispiel #5
0
    IEnumerator CallAfterTime(TransitionEffectManager_Callback callback, float time)
    {
        yield return(new WaitForSeconds(time));

        callback();
    }