From b01151f932f8faa041a8facfb03059147170f40c Mon Sep 17 00:00:00 2001
From: liuzhiwei <liuzhiwei@qq.com>
Date: Wed, 09 Dec 2020 10:16:24 +0800
Subject: [PATCH] Merge branch 'master' of http://172.16.1.52:8090/r/GemBattle into master

---
 Assets/Scripts/Music/AudioSourceManager.cs |   94 ++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 89 insertions(+), 5 deletions(-)

diff --git a/Assets/Scripts/Music/AudioSourceManager.cs b/Assets/Scripts/Music/AudioSourceManager.cs
index 3612798..c17d5f0 100644
--- a/Assets/Scripts/Music/AudioSourceManager.cs
+++ b/Assets/Scripts/Music/AudioSourceManager.cs
@@ -1,4 +1,5 @@
-using System.Collections;
+using System.Security.Cryptography.X509Certificates;
+using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 
@@ -19,7 +20,13 @@
     WaterTAttack,//水攻击
     WoodTAttack,//木攻击
     LightningSkill,//电技能
-    FireSkill//火技能
+    FireSkill,//火技能
+    FinalScore,//结算分数滚动效果
+    BossWaterSkill,//气泡
+    WaterTowerSkill,//冰淇淋技能
+    WoodSkill,//玉米狙击子弹
+    Upgrade,//合成
+
 }
 public class AudioSourceManager : MonoBehaviour
 {
@@ -65,7 +72,7 @@
         return tmpAudioSource;
     }
 
-    private AudioClip LoadAudioClip(string musicName)
+    public AudioClip LoadAudioClip(string musicName)
     {
         if (clipDic.ContainsKey(musicName))
             return clipDic[musicName];
@@ -75,7 +82,6 @@
             clipDic.Add(musicName, au);
             return au;
         }
-
     }
 
     public void Play(AudioEnum en)
@@ -130,10 +136,31 @@
                 Play("电技能", true);
                 break;
             case AudioEnum.FireSkill:
-                Play("火技能", true);
+                Debug.Log("火焰喷射");
+
+                Play("火焰喷射", true);
                 break;
+            case AudioEnum.FinalScore:
+                Debug.Log("结算分数");
 
+                Play("结算分数", true);
+                break;
+            case AudioEnum.BossWaterSkill:
+                //Play("气泡", true);
+                PlayBossWaterSkill("气泡");
+                break;
+            case AudioEnum.WaterTowerSkill:
+                Play("冰淇淋技能", true);
+                break;
+            case AudioEnum.WoodSkill:
 
+                Play("玉米狙击子弹", true);
+                break;
+            case AudioEnum.Upgrade:
+                Debug.Log("合成");
+
+                Play("合成", true);
+                break;
         }
     }
 
@@ -166,6 +193,63 @@
         tmpAudioSource.volume = volume;
     }
 
+    AudioSource bossWaterSkillAS;
+    /// <summary>
+    /// BOSS气泡技能 38秒钟,所以不用循环播放
+    /// </summary>
+    /// <param name="musicName"></param>
+    /// <param name="volume"></param>
+    private void PlayBossWaterSkill(string musicName, float volume = 1.0f)
+    {
+        Debug.Log("BOSS气泡技能 38秒钟,所以不用循环播放");
+
+        AudioClip au = LoadAudioClip(musicName);
+        bossWaterSkillAS = GetAudioSource();
+        bossWaterSkillAS.clip = au;
+        bossWaterSkillAS.loop = false;
+
+        bossWaterSkillAS.Play();
+        bossWaterSkillAS.volume = volume;
+    }
+
+    /// <summary>
+    /// BOSS气泡技能结束
+    /// </summary>
+    public void StopBossWaterSkill()
+    {
+        Debug.Log("BOSS气泡技能结束");
+        if (bossWaterSkillAS != null)
+        {
+            bossWaterSkillAS.Stop();
+            bossWaterSkillAS.clip = null;
+            if (audioSourceList.Count > 5)
+            {
+                audioSourceList.Remove(bossWaterSkillAS);
+                Destroy(bossWaterSkillAS);
+                bossWaterSkillAS = null;
+            }
+        }
+    }
+
+    /// <summary>
+    /// 暂停背景音乐
+    /// </summary>
+    public void StopBGAudio()
+    {
+        if (!audioSourceList[0].isPlaying)
+            audioSourceList[0].Stop();
+    }
+
+    /// <summary>
+    /// 继续背景音乐
+    /// </summary>
+    public void RestartBGAudio()
+    {
+        if (!audioSourceList[0].isPlaying)
+            audioSourceList[0].Play();
+    }
+
+
     /// <summary>
     /// 销毁音效
     /// </summary>

--
Gitblit v1.9.1