< Summary

Class:TutorialMusicHandler
Assembly:Onboarding
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Tutorial/Scripts/TutorialMusicHandler.cs
Covered lines:0
Uncovered lines:30
Coverable lines:30
Total lines:70
Line coverage:0% (0 of 30)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Awake()0%2100%
OnDestroy()0%6200%
StopTutorialMusic()0%12300%
TryPlayingMusic()0%20400%
OnAvatarEditorMusicPlay()0%6200%
OnAvatarEditorMusicStop()0%6200%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Tutorial/Scripts/TutorialMusicHandler.cs

#LineLine coverage
 1using System.Collections;
 2using System.Collections.Generic;
 3using DCL;
 4using UnityEngine;
 5
 6public class TutorialMusicHandler : MonoBehaviour
 7{
 8    [SerializeField] AudioEvent tutorialMusic, avatarEditorMusic;
 9
 10    Coroutine fadeOut;
 11
 12    private void Awake()
 13    {
 014        avatarEditorMusic.OnPlay += OnAvatarEditorMusicPlay;
 015        avatarEditorMusic.OnStop += OnAvatarEditorMusicStop;
 016    }
 17
 18    private void OnDestroy()
 19    {
 020        avatarEditorMusic.OnPlay -= OnAvatarEditorMusicPlay;
 021        avatarEditorMusic.OnStop -= OnAvatarEditorMusicStop;
 22
 023        if (fadeOut != null)
 24        {
 025            CoroutineStarter.Stop(fadeOut);
 026            fadeOut = null;
 27        }
 028    }
 29    public void StopTutorialMusic()
 30    {
 031        DataStore.i.virtualAudioMixer.sceneSFXVolume.Set(1f);
 32
 033        if (fadeOut != null)
 34        {
 035            CoroutineStarter.Stop(fadeOut);
 036            fadeOut = null;
 37        }
 38
 039        if (tutorialMusic.source.isPlaying)
 040            fadeOut = CoroutineStarter.Start(tutorialMusic.FadeOut(3f));
 041    }
 42
 43    public void TryPlayingMusic()
 44    {
 045        if (DCL.Tutorial.TutorialController.i.userAlreadyDidTheTutorial)
 046            return;
 47
 048        if (!tutorialMusic.source.isPlaying)
 49        {
 050            if (fadeOut != null)
 51            {
 052                CoroutineStarter.Stop(fadeOut);
 53            }
 054            DataStore.i.virtualAudioMixer.sceneSFXVolume.Set(0f);
 055            tutorialMusic.Play();
 56        }
 057    }
 58
 59    void OnAvatarEditorMusicPlay()
 60    {
 061        if (tutorialMusic.source.isPlaying)
 062            fadeOut = CoroutineStarter.Start(tutorialMusic.FadeOut(1.5f, false));
 063    }
 64
 65    void OnAvatarEditorMusicStop()
 66    {
 067        if (tutorialMusic.source.isPlaying)
 068            CoroutineStarter.Start(tutorialMusic.FadeIn(2.5f));
 069    }
 70}