示例#1
0
        public bool IsBankLoaded(string name)
        {
            int num   = 0;
            int count = this.soundBankScaleStack.Count;

            while (num < count)
            {
                int            index  = 0;
                SoundBankScale scale  = this.soundBankScaleStack[num];
                int            length = scale.soundBankNames.Length;
                while (index < length)
                {
                    SoundBankScale scale2 = this.soundBankScaleStack[num];
                    if (name == scale2.soundBankNames[index])
                    {
                        return(true);
                    }
                    index++;
                }
                num++;
            }
            int num5 = 0;
            int num6 = this.manualPrepareBanks.Count;

            while (num5 < num6)
            {
                if (name == this.manualPrepareBanks[num5])
                {
                    return(true);
                }
                num5++;
            }
            return(false);
        }
示例#2
0
        public void ClearUp()
        {
            if (this._defaultPlayObject != null)
            {
                UnityEngine.Object.Destroy(this._defaultPlayObject);
                this._defaultPlayObject = null;
            }
            int num   = 0;
            int count = this.soundBankScaleStack.Count;

            while (num < count)
            {
                SoundBankScale scale  = this.soundBankScaleStack[num];
                int            index  = 0;
                int            length = scale.soundBankNames.Length;
                while (index < length)
                {
                    AkBankManager.UnloadBank(scale.soundBankNames[index]);
                    index++;
                }
                num++;
            }
            this.soundBankScaleStack.Clear();
            this.ClearManualPrepareBank();
        }
示例#3
0
        public void ReloadBanks()
        {
            uint num;
            int  num2  = 0;
            int  count = this.soundBankScaleStack.Count;

            while (num2 < count)
            {
                SoundBankScale scale  = this.soundBankScaleStack[num2];
                int            index  = 0;
                int            length = scale.soundBankNames.Length;
                while (index < length)
                {
                    AkSoundEngine.UnloadBank(scale.soundBankNames[index], IntPtr.Zero, null, null);
                    AkSoundEngine.LoadBank(scale.soundBankNames[index], -1, out num);
                    index++;
                }
                num2++;
            }
            int num6 = 0;
            int num7 = this.manualPrepareBanks.Count;

            while (num6 < num7)
            {
                AkSoundEngine.UnloadBank(this.manualPrepareBanks[num6], IntPtr.Zero, null, null);
                AkSoundEngine.LoadBank(this.manualPrepareBanks[num6], -1, out num);
                num6++;
            }
        }
示例#4
0
 public void PopSoundBankScale()
 {
     if (this.soundBankScaleStack.Count != 0)
     {
         SoundBankScale scale  = this.soundBankScaleStack[0];
         int            index  = 0;
         int            length = scale.soundBankNames.Length;
         while (index < length)
         {
             AkBankManager.UnloadBank(scale.soundBankNames[index]);
             index++;
         }
         this.soundBankScaleStack.RemoveAt(0);
     }
 }
示例#5
0
 public void PushSoundBankScale(string[] soundBankNames)
 {
     if (soundBankNames != null)
     {
         SoundBankScale item = new SoundBankScale {
             soundBankNames = soundBankNames
         };
         int index  = 0;
         int length = soundBankNames.Length;
         while (index < length)
         {
             AkBankManager.LoadBank(soundBankNames[index]);
             index++;
         }
         this.soundBankScaleStack.Insert(0, item);
     }
 }