Exemple #1
0
 private SoundLibrary.SerializedSample GetSample(string sampleName)
 {
     SoundLibrary.SerializedSample serializedSample = SoundLibrary.GetSample(sampleName);
     if (serializedSample == null && storedState != null)
     {
         SoundLibrarySample sample = storedState.GetSample(sampleName);
         if (sample != null)
         {
             serializedSample = sample.GetSerialized();
         }
     }
     return(serializedSample);
 }
Exemple #2
0
 public void SetSample(SoundLibrary.SerializedSample sample)
 {
     if (soundSample != null)
     {
         soundSample.Unsubscribe(OnSampleLoaded);
     }
     this.sample = sample?.name;
     soundSample = sample;
     if (soundSample != null)
     {
         soundSample.Subscribe(OnSampleLoaded);
     }
 }
Exemple #3
0
 public void RefreshSampleParameters(SoundLibrary.SerializedSample sample)
 {
     for (int i = 0; i < sounds.Count; i++)
     {
         SoundMaster soundMaster = sounds[i];
         if (soundMaster.master.soundSample != null && soundMaster.master.soundSample.name == sample.name)
         {
             for (int j = 0; j < soundMaster.linked.Count; j++)
             {
                 soundMaster.linked[j].RefreshSampleParameters();
             }
         }
     }
 }
Exemple #4
0
 public void CrossfadeClip(AudioClip clip, float volume, float pitch, bool loop, float after, float duration, float outDuration, float inDuration)
 {
     soundSample = new SoundLibrary.SerializedSample
     {
         pB = 1f,
         vB = 1f
     };
     CrossfadeSound(new SoundLibrary.SerializedClip
     {
         clip = clip,
         pB   = pitch,
         vB   = volume
     }, loop, after, duration, outDuration, inDuration);
 }
Exemple #5
0
 public void PlayClip(AudioClip clip, float volume, float pitch, bool loop)
 {
     soundSample = new SoundLibrary.SerializedSample
     {
         pB = 1f,
         vB = 1f
     };
     PlaySound(new SoundLibrary.SerializedClip
     {
         clip = clip,
         pB   = pitch,
         vB   = volume
     }, loop);
 }
Exemple #6
0
 private void ShowSamples()
 {
     if (activeCategory == null)
     {
         return;
     }
     sampleScrollPos = GUILayout.BeginScrollView(sampleScrollPos, GUILayout.MinWidth(640f));
     for (int i = 0; i < activeCategory.samples.Count; i++)
     {
         Rect rect = GUILayoutUtility.GetRect(600f, 0f);
         rect.height = 24f;
         if (i % 2 == 0)
         {
             AudioUI.DrawRect(rect, new Color(0.2f, 0.2f, 0.2f, 0.5f));
         }
         else
         {
             AudioUI.DrawRect(rect, new Color(0f, 0f, 0f, 0.5f));
         }
         GUILayout.BeginHorizontal(GUILayout.Height(rect.height));
         SoundLibrary.SerializedSample serializedSample = activeCategory.samples[i];
         string text = serializedSample.name;
         if (serializedSample.isSwitch)
         {
             text = ((!serializedSample.isLoop) ? (text + " S") : (text + " SL"));
         }
         else if (serializedSample.isLoop)
         {
             text += " L";
         }
         GUILayout.Label(text);
         GUILayout.Label("lvl", AudioUI.style, GUILayout.ExpandWidth(expand: false));
         Rect  rect2 = GUILayoutUtility.GetRect(100f, rect.height, GUILayout.ExpandWidth(expand: false));
         float num   = AudioUI.DrawHorizontalSlider(rect2, 0f, 1f, 1f, serializedSample.vB, AudioSliderType.Volume);
         rect2 = GUILayoutUtility.GetRect(50f, rect.height, GUILayout.ExpandWidth(expand: false));
         serializedSample.vR = AudioUI.DrawHorizontalSlider(rect2, 0f, 24f, 0f, serializedSample.vR, AudioSliderType.Linear);
         GUILayout.Label("tune", AudioUI.style, GUILayout.ExpandWidth(expand: false));
         rect2 = GUILayoutUtility.GetRect(75f, rect.height, GUILayout.ExpandWidth(expand: false));
         float num2 = AudioUI.DrawHorizontalSlider(rect2, -2400f, 2400f, 1f, serializedSample.pB, AudioSliderType.Pitch);
         rect2 = GUILayoutUtility.GetRect(50f, rect.height, GUILayout.ExpandWidth(expand: false));
         serializedSample.pR = AudioUI.DrawHorizontalSlider(rect2, 0f, 2400f, 1f, serializedSample.pR, AudioSliderType.Linear);
         GUILayout.Label("xfade", AudioUI.style, GUILayout.ExpandWidth(expand: false));
         rect2 = GUILayoutUtility.GetRect(100f, rect.height, GUILayout.ExpandWidth(expand: false));
         float num3 = AudioUI.DrawHorizontalSlider(rect2, 10f, 5000f, 100f, serializedSample.crossFade * 1000f, AudioSliderType.Log2);
         if (serializedSample.crossFade * 1000f != num3)
         {
             serializedSample.crossFade = num3 / 1000f;
         }
         if (num != serializedSample.vB || num2 != serializedSample.pB)
         {
             serializedSample.vB = num;
             serializedSample.pB = num2;
             if (SoundManager.level != null)
             {
                 SoundManager.level.RefreshSampleParameters(serializedSample);
             }
             if (SoundManager.main != null)
             {
                 SoundManager.main.RefreshSampleParameters(serializedSample);
             }
         }
         GUILayout.EndHorizontal();
     }
     GUILayout.EndScrollView();
 }
Exemple #7
0
 private void Window(int id)
 {
     GUILayout.BeginHorizontal();
     categoryScrollPos = GUILayout.BeginScrollView(categoryScrollPos, GUILayout.MinWidth(240f));
     GUILayout.BeginVertical();
     GUILayout.Label("Level Library");
     for (int i = 0; i < SoundLibrary.level.library.categories.Count; i++)
     {
         SoundLibrary.SampleCategory sampleCategory = SoundLibrary.level.library.categories[i];
         Rect rect = GUILayoutUtility.GetRect(200f, 24f);
         AudioUI.DrawRect(rect, (!(sampleCategory.name == pickCategoryName)) ? new Color(0.3f, 0.3f, 0.3f, 1f) : new Color(0f, 0.3f, 0f, 1f));
         if (GUI.Toggle(rect, sampleCategory.name == pickCategoryName, sampleCategory.name))
         {
             pickCategoryName = sampleCategory.name;
             pickLibrary      = SoundLibrary.level;
         }
     }
     GUILayout.Label("Main Library");
     for (int j = 0; j < SoundLibrary.main.library.categories.Count; j++)
     {
         SoundLibrary.SampleCategory sampleCategory2 = SoundLibrary.main.library.categories[j];
         Rect rect2 = GUILayoutUtility.GetRect(200f, 24f);
         AudioUI.DrawRect(rect2, (!(sampleCategory2.name == pickCategoryName)) ? new Color(0.3f, 0.3f, 0.3f, 1f) : new Color(0f, 0.3f, 0f, 1f));
         if (GUI.Toggle(rect2, sampleCategory2.name == pickCategoryName, sampleCategory2.name))
         {
             pickCategoryName = sampleCategory2.name;
             pickLibrary      = SoundLibrary.main;
         }
     }
     GUILayout.EndVertical();
     GUILayout.EndScrollView();
     sampleScrollPos = GUILayout.BeginScrollView(categoryScrollPos, GUILayout.MinWidth(240f));
     GUILayout.BeginVertical();
     SoundLibrary.SerializedSample serializedSample = null;
     if (pickLibrary != null)
     {
         for (int k = 0; k < pickLibrary.library.samples.Count; k++)
         {
             SoundLibrary.SerializedSample serializedSample2 = pickLibrary.library.samples[k];
             if (!(serializedSample2.category != pickCategoryName))
             {
                 bool flag  = pickSampleSound.master.sample == serializedSample2.name;
                 Rect rect3 = GUILayoutUtility.GetRect(200f, 24f);
                 AudioUI.DrawRect(rect3, (!flag) ? new Color(0.3f, 0.3f, 0.3f, 1f) : new Color(0f, 0.3f, 0f, 1f));
                 if (flag != GUI.Toggle(rect3, flag, serializedSample2.name))
                 {
                     serializedSample = serializedSample2;
                 }
             }
         }
     }
     GUILayout.EndVertical();
     GUILayout.EndScrollView();
     GUILayout.EndHorizontal();
     GUI.DragWindow();
     if (serializedSample != null)
     {
         if (pickSampleSound.master.sample != serializedSample.name)
         {
             pickSampleSound.SetSample(serializedSample.name);
         }
         pickSampleSound = null;
     }
 }