From fd1ac06475bf155996ac4aed6307eb43f9e04f53 Mon Sep 17 00:00:00 2001
From: wangguan <wangguan@kt007.com>
Date: Wed, 11 Nov 2020 14:38:13 +0800
Subject: [PATCH] 替换技能宝石特效位置

---
 Assets/Scripts/TowerDefense/Level/EndlessWaveLineManager.cs |   55 ++++++++++++++++++++++++++++---------------------------
 1 files changed, 28 insertions(+), 27 deletions(-)

diff --git a/Assets/Scripts/TowerDefense/Level/EndlessWaveLineManager.cs b/Assets/Scripts/TowerDefense/Level/EndlessWaveLineManager.cs
index f0735f7..05623dd 100644
--- a/Assets/Scripts/TowerDefense/Level/EndlessWaveLineManager.cs
+++ b/Assets/Scripts/TowerDefense/Level/EndlessWaveLineManager.cs
@@ -19,17 +19,17 @@
     /// <summary>
     /// 火攻击效果
     /// </summary>
-    public ParticleSystem skillFirePrefab;
+    public GameObject skillFirePrefab;
 
     /// <summary>
     /// 炸弹攻击效果
     /// </summary>
-    public ParticleSystem skillBombPrefab;
+    public GameObject skillBombPrefab;
 
     /// <summary>
     /// 停止移动的Buff特效.
     /// </summary>
-    public ParticleSystem bufStopMovePrefab;
+    public GameObject bufStopMovePrefab;
 
     protected bool zeroState = true;
 
@@ -53,10 +53,16 @@
     {
         if (id >= waveLineList.Count || waveLineList[id] == null) return;
 
-        ParticleSystem playParticle = Instantiate(skillFirePrefab);
-        playParticle.transform.position = EndlessLevelManager.instance.WaveManager.GetWaveEndPos(id);
-        playParticle.Play();
-        Destroy(playParticle.gameObject, playParticle.main.duration);
+        GameObject obj = Instantiate(skillFirePrefab);
+        ParticleSystem ps = obj.GetComponent<ParticleSystem>();
+
+        if (ps == null)
+            ps = obj.transform.GetChild(0).GetComponent<ParticleSystem>();
+        ps.transform.position = EndlessLevelManager.instance.WaveManager.GetWaveEndPos(id);
+        ps.Play();
+        AudioSourceManager.Ins.Play(AudioEnum.FireSkill);
+
+        Destroy(obj, 5f);
     }
 
     /// <summary>
@@ -66,10 +72,17 @@
     public void PlayBattleAreaBombEffect(Vector3 pos)
     {
         if (skillBombPrefab == null) return;
-        ParticleSystem playParticle = Instantiate(skillBombPrefab);
-        playParticle.transform.position = pos;
-        playParticle.Play();
-        Destroy(playParticle.gameObject, playParticle.main.duration);
+
+        GameObject obj = Instantiate(skillBombPrefab);
+        ParticleSystem ps = obj.GetComponent<ParticleSystem>();
+
+        if (ps == null)
+            ps = obj.transform.GetChild(0).GetComponent<ParticleSystem>();
+        ps.transform.position = pos;
+        ps.Play();
+        AudioSourceManager.Ins.Play(AudioEnum.LightningSkill);
+
+        Destroy(obj, 5f);
     }
 
     /// <summary>
@@ -111,23 +124,11 @@
     /// 某一个位置攻击塔位放下。
     /// </summary>
     /// <param name="pos"></param>
-    public void AttackTowerFixed(int pos)
+    public void AttackTowerFixed(int pos, bool playEffect = true)
     {
-        if (pos >= waveLineList.Count || waveLineList[pos] == null) return;
+        if (pos >= waveLineList.Count || waveLineList[pos] == null || !playEffect) return;
 
-        int subone = pos - 1;
-        int addone = pos + 1;
-
-        if (subone >= 0)
-            WaveLineFlash(subone);
+        // 无尽模式改为只有一条兵线
         WaveLineFlash(pos);
-        if (addone < waveLineList.Count)
-            WaveLineFlash(addone);
     }
-
-    // Update is called once per frame
-    void Update()
-    {
-
-    }
-}
+}
\ No newline at end of file

--
Gitblit v1.9.1