From 8b75826708d18f51eae4f6916eace5c92efa4dde Mon Sep 17 00:00:00 2001
From: wangguan <wangguan@kt007.com>
Date: Fri, 13 Nov 2020 17:58:19 +0800
Subject: [PATCH] 替换特效

---
 Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs |   19 ++++++++++++++++---
 1 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs b/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs
index 8a02c3d..ae56721 100644
--- a/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs
+++ b/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs
@@ -26,6 +26,10 @@
         /// </summary>
         public GameObject projectile;
 
+        /// <summary>
+        /// 木塔最后一击是特殊攻击,需要替换projectile
+        /// </summary>
+        public GameObject woodProjectile_SP;
         // 
         protected GameObject projectile1;
         protected GameObject projectile2;
@@ -403,8 +407,9 @@
                 if (this.towerPtr)
                     towerPtr.setTowerState(true);
             }
+            
+            GameObject go = damagerProjectile.gameObject;
 
-            // 
             // 处理子弹充能相关的内容
             if (towerPtr && (towerPtr.bulletCtl != null))
             {
@@ -412,9 +417,17 @@
                 // 
                 if (bnum == 0)
                 {
-                    damagerProjectile.damageMulti = 10.0f;
+                    //damagerProjectile.damageMulti = 10.0f;
                     fillBulletTime = 2.0f;
+
+                    //这里需要替换特效
+                    var poolable = Core.Utilities.Poolable.TryGetPoolable<Core.Utilities.Poolable>(woodProjectile_SP);
+                    go = poolable.gameObject;
+                    Damager tmpDamager = go.GetComponent<Damager>();
+                    tmpDamager.damageMulti = 10.0f;
+                    tmpDamager.damage = damagerProjectile.damage;
                 }
+
             }
             else
             {
@@ -432,7 +445,7 @@
             {
                 if (Targetter.bSearchTarget)
                 {
-                    m_Launcher.Launch(m_TrackingEnemy, damagerProjectile.gameObject, projectilePoints);
+                    m_Launcher.Launch(m_TrackingEnemy, go, projectilePoints);
                     if (AudioSourceManager.Ins)
                         AudioSourceManager.Ins.Play(audioEnum);
                 }

--
Gitblit v1.9.1