示例#1
0
    private string SoundFolderToScenePath(eSoundFolders folder)
    {
        switch (folder)
        {
        case eSoundFolders.Ambience:
            return("AudioListener(Clone)/AudioManager/AMB");   //"Audio/Ambience";

        case eSoundFolders.Music:
            return("AudioListener(Clone)/AudioManager/MUS");   //"Audio/Music";

        case eSoundFolders.SFX:
            return("AudioListener(Clone)/AudioManager/SFX");   //"Audio/SFX";

        case eSoundFolders.UI:
            return("AudioListener(Clone)/AudioManager/UI");   //"Audio/UI";

        case eSoundFolders.UIMusic:
            return("AudioListener(Clone)/Audio/UIMusic");

        case eSoundFolders.BGM:
            return("AudioListener(Clone)/AudioManager/BGM");

        default:
            return("");
        }
    }
示例#2
0
 public void SetDeltaVolume(eSoundFolders folders, float Volume)
 {
     foreach (eSoundFolders folder in _soundFolders.Keys)
     {
         if ((folders & folder) != 0)
         {
             _soundFolders[folder].UserSetVolume = Volume;
         }
     }
 }
示例#3
0
 public void RevertUserVolumeToDefault(eSoundFolders folders)
 {
     foreach (eSoundFolders folder in _soundFolders.Keys)
     {
         if ((folders & folder) != 0)
         {
             _soundFolders[folder].ResetUserSettings();
         }
     }
 }
示例#4
0
    private void MakeSoundFolderData(eSoundFolders folder)
    {
        GameObject folderGo = GameObject.Find(SoundFolderToScenePath(folder));

        if (folderGo == null)
        {
            return;                     // EARLY RETURN
        }

        _soundFolders[folder] = new SoundFolderData(folderGo.GetComponent <Fabric.Component>());
    }
示例#5
0
    public void SetDeltaVolume(eSoundFolders folders, float deltaVolume, float time)
    {
        foreach (eSoundFolders folder in _soundFolders.Keys)
        {
            if ((folders & folder) != 0)
            {
                TweenedFolder tf = _tweenedFolders.Find((TweenedFolder test) => test.folder == _soundFolders[folder]);
                if (tf == null)
                {
                    tf        = new TweenedFolder();
                    tf.folder = _soundFolders[folder];
                    _tweenedFolders.Add(tf);
                }
                tf.targetDeltaVolume  = deltaVolume;
                tf.variationPerSecond = (deltaVolume - tf.folder.DeltaVolume) / time;
            }
        }

        if (!_isTweeningRunning)
        {
            EB.Coroutines.Run(TweenVolumes());
        }
    }
示例#6
0
 public void UnDuck(eSoundFolders folders)
 {
     SetDeltaVolume(folders, 0.0f, 1.0f);
     DuckedFolders = DuckedFolders & (~folders);
 }
示例#7
0
 public void Duck(eSoundFolders folders)
 {
     // It will be -0.8 until someone has a better idea.
     SetDeltaVolume(folders, -1.0f, 1.0f);
     DuckedFolders |= folders;
 }
示例#8
0
 public void SetUserVolumeMute(eSoundFolders folders)
 {
     SetUserVolume(folders, 0.0f);
 }