From 6ae4b14b7fb6640ec805f070a1f0f691941c6917 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 13 二月 2026 19:26:53 +0800
Subject: [PATCH] 0312 公会砍价上限写死50人

---
 Main/System/Battle/SkillEffect/NormalSkillEffect.cs |   43 +++++++++++++++++++++++++++++++------------
 1 files changed, 31 insertions(+), 12 deletions(-)

diff --git a/Main/System/Battle/SkillEffect/NormalSkillEffect.cs b/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
index be52bf9..31b26ad 100644
--- a/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
+++ b/Main/System/Battle/SkillEffect/NormalSkillEffect.cs
@@ -11,8 +11,8 @@
     // protected BattleObject caster;
     // protected List<BattleObject> targets; // 鐩爣鍒楄〃
 
-    public NormalSkillEffect(SkillConfig _skillConfig, BattleObject _caster, HB427_tagSCUseSkill _tagUseSkillAttack)
-        : base(_skillConfig, _caster, _tagUseSkillAttack)
+    public NormalSkillEffect(SkillBase _skillBase, SkillConfig _skillConfig, SkillSkinConfig _skillSkinConfig, BattleObject _caster, HB427_tagSCUseSkill _tagUseSkillAttack)
+        : base(_skillBase, _skillConfig, _skillSkinConfig, _caster, _tagUseSkillAttack)
     {
 
     }
@@ -20,6 +20,23 @@
 
     public override void OnMiddleFrameEnd(int times, int hitIndex)
     {
+
+        int mainTargetIndex = BattleUtility.GetMainTargetPositionNum(skillBase, caster, tagUseSkillAttack.HurtList.ToList(), skillConfig);
+
+        BattleCamp battleCamp = skillConfig.TagFriendly == 1 ? caster.Camp : caster.GetEnemyCamp();
+
+        RectTransform targetTransform = caster.battleField.GetTeamNode(battleCamp, mainTargetIndex);
+
+        if (skillSkinConfig.ExplosionEffectId > 0)
+        {
+            caster.battleField.battleEffectMgr.PlayEffect(caster, skillSkinConfig.ExplosionEffectId, targetTransform, caster.Camp, 1f);
+        }
+
+        if (skillSkinConfig.ExplosionEffect2 > 0)
+        {
+            caster.battleField.battleEffectMgr.PlayEffect(caster, skillSkinConfig.ExplosionEffect2, targetTransform, caster.Camp, 1f);
+        }
+
         for (int i = 0; i < tagUseSkillAttack.HurtList.Length; i++)
         {
             var hurt = tagUseSkillAttack.HurtList[i];
@@ -30,23 +47,25 @@
                 continue;
             }
 
-            if (skillConfig.ExplosionEffectId > 0)
+            if (skillSkinConfig.ExplosionEffect3 > 0)
             {
-                caster.battleField.battleEffectMgr.PlayEffect(target.ObjID, skillConfig.ExplosionEffectId, target.heroGo.transform, target.Camp);
+                caster.battleField.battleEffectMgr.PlayEffect(target, skillSkinConfig.ExplosionEffect3, target.GetTransform(), caster.Camp, target.GetModelScale());
             }
-
-            if (skillConfig.ExplosionEffect2 > 0)
+            if (skillSkinConfig.ExplosionEffect4 > 0)
             {
-                caster.battleField.battleEffectMgr.PlayEffect(target.ObjID, skillConfig.ExplosionEffect2, target.heroGo.transform, target.Camp);
-            }
-
-            if (skillConfig.ExplosionEffect3 > 0)
-            {
-                caster.battleField.battleEffectMgr.PlayEffect(target.ObjID, skillConfig.ExplosionEffect3, target.heroGo.transform, target.Camp);
+                caster.battleField.battleEffectMgr.PlayEffect(target, skillSkinConfig.ExplosionEffect4, target.GetTransform(), caster.Camp, target.GetModelScale());
             }
         }
 
         onHit?.Invoke(hitIndex, tagUseSkillAttack.HurtList.ToList());
+    }
+
+    /// <summary>
+    /// 鍚庢憞缁撴潫
+    /// </summary>
+    public override void OnFinalFrameEnd()
+    {
+        base.OnFinalFrameEnd();
         isFinish = true;
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0