From 3b2a6bb9047cfce9f501593b3669a9c1af6c5df4 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期三, 05 十一月 2025 17:40:23 +0800
Subject: [PATCH] 130 战斗修改回合样式

---
 Main/System/Battle/SkillEffect/NormalSkillEffect.cs |   67 ++++++++++++++++-----------------
 1 files changed, 32 insertions(+), 35 deletions(-)

diff --git a/Main/System/Battle/SkillEffect/NormalSkillEffect.cs b/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
index 262720e..172d5f6 100644
--- a/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
+++ b/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
@@ -17,58 +17,55 @@
 
     }
 
-    //  鎶�鑳藉姩浣滅涓�甯�
-    //  涓嶇敤鐞嗕細鍥炶皟
-    public override void Play(Action<int, List<HB427_tagSCUseSkill.tagSCUseSkillHurt>> _onHit)
-    {
-        // 鎾斁鎶�鑳界壒鏁�
-        BattleEffectPlayer battleEffectPlayer = caster.battleField.battleEffectMgr.PlayEffect(
-            caster.ObjID,
-            skillConfig.EffectId,
-            caster.heroGo.transform
-        );
-    }
-
-
-    public override void Run()
-    {
-        base.Run();
-    }
 
     public override void OnMiddleFrameEnd(int times, int hitIndex)
     {
-        BattleDebug.LogError($" NormalSkillEffect OnMiddleFrameEnd times : {times}, hitIndex : {hitIndex}");
+
+        int mainTargetIndex = BattleUtility.GetMainTargetPositionNum(caster, tagUseSkillAttack.HurtList.ToList(), skillConfig);
+
+        BattleCamp battleCamp = skillConfig.TagFriendly == 1 ? caster.Camp : caster.GetEnemyCamp();
+
+        RectTransform targetTransform = caster.battleField.GetTeamNode(battleCamp, mainTargetIndex);
+
+        if (skillConfig.ExplosionEffectId > 0)
+        {
+            caster.battleField.battleEffectMgr.PlayEffect(caster, skillConfig.ExplosionEffectId, targetTransform, caster.Camp);
+        }
+
+        if (skillConfig.ExplosionEffect2 > 0)
+        {
+            caster.battleField.battleEffectMgr.PlayEffect(caster, skillConfig.ExplosionEffect2, targetTransform, caster.Camp);
+        }
+
         for (int i = 0; i < tagUseSkillAttack.HurtList.Length; i++)
         {
             var hurt = tagUseSkillAttack.HurtList[i];
             BattleObject target = caster.battleField.battleObjMgr.GetBattleObject((int)hurt.ObjID);
             if (target == null)
             {
-                BattleDebug.LogError("鐗规晥鐩爣涓虹┖ target == null ObjId : " + hurt.ObjID);
+                Debug.LogError("鐗规晥鐩爣涓虹┖ target == null ObjId : " + hurt.ObjID);
                 continue;
             }
 
-            /*var effect1 = */
-            caster.battleField.battleEffectMgr.PlayEffect(target.ObjID, skillConfig.ExplosionEffectId, target.heroGo.transform);
-            /*var effect2 = */
-            caster.battleField.battleEffectMgr.PlayEffect(target.ObjID, skillConfig.ExplosionEffect2, target.heroGo.transform);
-            // if (effect1 != null)
-            // {
-            //     effect1.transform.localRotation = effectTrans.localRotation;
-            // }
-            // if (effect2 != null)
-            // {
-            //     effect2.transform.localRotation = effectTrans.localRotation;
-            // }
+            if (skillConfig.ExplosionEffect3 > 0)
+            {
+                caster.battleField.battleEffectMgr.PlayEffect(target, skillConfig.ExplosionEffect3, target.heroGo.transform, caster.Camp);
+            }
+            if (skillConfig.ExplosionEffect4 > 0)
+            {
+                caster.battleField.battleEffectMgr.PlayEffect(target, skillConfig.ExplosionEffect4, target.heroGo.transform, caster.Camp);
+            }
         }
 
-        //  涓轰粈涔堟病瑙﹀彂
         onHit?.Invoke(hitIndex, tagUseSkillAttack.HurtList.ToList());
-        isFinish = true;
     }
 
-    public override void OnMiddleFrameStart(int times)
+    /// <summary>
+    /// 鍚庢憞缁撴潫
+    /// </summary>
+    public override void OnFinalFrameEnd()
     {
-        
+        base.OnFinalFrameEnd();
+        isFinish = true;
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0