From 35e1332c385226a4f57c4294c19045a8aed9abe6 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期三, 10 九月 2025 17:09:52 +0800
Subject: [PATCH] 125 【战斗】战斗系统 目标选择规则&bug修复

---
 Main/System/Battle/SkillEffect/NormalSkillEffect.cs |   27 +++++++++++++++++----------
 1 files changed, 17 insertions(+), 10 deletions(-)

diff --git a/Main/System/Battle/SkillEffect/NormalSkillEffect.cs b/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
index a124a4a..b185387 100644
--- a/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
+++ b/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
@@ -20,6 +20,23 @@
 
     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, battleCamp);
+        }
+
+        if (skillConfig.ExplosionEffect2 > 0)
+        {
+            caster.battleField.battleEffectMgr.PlayEffect(0, skillConfig.ExplosionEffect2, targetTransform, battleCamp);
+        }
+
         for (int i = 0; i < tagUseSkillAttack.HurtList.Length; i++)
         {
             var hurt = tagUseSkillAttack.HurtList[i];
@@ -28,16 +45,6 @@
             {
                 Debug.LogError("鐗规晥鐩爣涓虹┖ target == null ObjId : " + hurt.ObjID);
                 continue;
-            }
-
-            if (skillConfig.ExplosionEffectId > 0)
-            {
-                caster.battleField.battleEffectMgr.PlayEffect(target.ObjID, skillConfig.ExplosionEffectId, target.heroGo.transform, target.Camp);
-            }
-
-            if (skillConfig.ExplosionEffect2 > 0)
-            {
-                caster.battleField.battleEffectMgr.PlayEffect(target.ObjID, skillConfig.ExplosionEffect2, target.heroGo.transform, target.Camp);
             }
 
             if (skillConfig.ExplosionEffect3 > 0)

--
Gitblit v1.8.0