From 0792ab377b82eed196ecdfd34dab84311bddf7a1 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期一, 15 九月 2025 17:06:20 +0800
Subject: [PATCH] 0312 加载场景

---
 Main/System/Battle/SkillEffect/NormalSkillEffect.cs |   50 ++++++++++++++++++++++++++++----------------------
 1 files changed, 28 insertions(+), 22 deletions(-)

diff --git a/Main/System/Battle/SkillEffect/NormalSkillEffect.cs b/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
index 369704d..0fa8e87 100644
--- a/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
+++ b/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
@@ -17,26 +17,26 @@
 
     }
 
-    //  鎶�鑳藉姩浣滅涓�甯�
-    //  涓嶇敤鐞嗕細鍥炶皟
-    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)
     {
+
+        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(0, skillConfig.ExplosionEffectId, targetTransform, caster.Camp);
+        }
+
+        if (skillConfig.ExplosionEffect2 > 0)
+        {
+            caster.battleField.battleEffectMgr.PlayEffect(0, skillConfig.ExplosionEffect2, targetTransform, caster.Camp);
+        }
+
         for (int i = 0; i < tagUseSkillAttack.HurtList.Length; i++)
         {
             var hurt = tagUseSkillAttack.HurtList[i];
@@ -47,15 +47,21 @@
                 continue;
             }
 
-            caster.battleField.battleEffectMgr.PlayEffect(target.ObjID, skillConfig.ExplosionEffectId, target.heroGo.transform);
-            caster.battleField.battleEffectMgr.PlayEffect(target.ObjID, skillConfig.ExplosionEffect2, target.heroGo.transform);
+            if (skillConfig.ExplosionEffect3 > 0)
+            {
+                caster.battleField.battleEffectMgr.PlayEffect(target.ObjID, skillConfig.ExplosionEffect3, target.heroGo.transform, caster.Camp);
+            }
         }
-        
+
         onHit?.Invoke(hitIndex, tagUseSkillAttack.HurtList.ToList());
     }
 
-    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