Esempio n. 1
0
    private IEnumerator DoStop(FadeProperties settings)
    {
        // Wait for the audio to finish fading, then stop the audio
        yield return(DoFade(settings));

        settings.source.Stop();
    }
Esempio n. 2
0
    void OnLevelWasLoaded(int level)
    {
        RefreshCamOverlay();
        if (fadeOutAfterLevelChange)
        {
            fadeOutAfterLevelChange = false;
            FadeOut(fadeProperties.delay, fadeProperties.increment);
            fadeProperties = null;
        }

        switch (level)
        {
        case 1:
            FadeManager.Instance.FadeOut(1f, 1f);
            break;
        }
    }
Esempio n. 3
0
    private IEnumerator DoFade(FadeProperties settings)
    {
        yield return(0);

        float startTime    = Time.time;
        float startVolume  = settings.source.volume;
        float fadePosition = 0;

        while (Time.time < startTime + settings.length)
        {
            fadePosition          += Time.deltaTime;
            settings.source.volume = Mathf.SmoothStep(startVolume, settings.targetVolume * masterVolume * SilenceMultiplier, fadePosition / settings.length);
            yield return(0);
        }
        // Stop playback if the audio has faded completely out
        if (settings.targetVolume <= 0)
        {
            settings.source.Stop();
        }
    }
Esempio n. 4
0
 public void FadeOutAfterChangingLevel(float delay, float inc)
 {
     fadeOutAfterLevelChange = true;
     fadeProperties          = new FadeProperties(FadeProperties.FadeType.FadeOut, delay, increment);
 }