From 5f531573714a504132c9b84811f33e430df21281 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期六, 21 三月 2026 01:37:44 +0800
Subject: [PATCH] 0312 每两帧处理一个模型

---
 Main/System/Battle/SkillEffect/DotSkillEffect.cs |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/Main/System/Battle/SkillEffect/DotSkillEffect.cs b/Main/System/Battle/SkillEffect/DotSkillEffect.cs
index e1a860c..d1cdea6 100644
--- a/Main/System/Battle/SkillEffect/DotSkillEffect.cs
+++ b/Main/System/Battle/SkillEffect/DotSkillEffect.cs
@@ -13,8 +13,8 @@
     // protected BattleObject caster;
     // protected List<BattleObject> targets; // 鐩爣鍒楄〃
 
-    public DotSkillEffect(SkillBase _skillBase, SkillConfig _skillConfig, BattleObject _caster, HB427_tagSCUseSkill _tagUseSkillAttack)
-        : base(_skillBase, _skillConfig, _caster, _tagUseSkillAttack)
+    public DotSkillEffect(SkillBase _skillBase, SkillConfig _skillConfig, SkillSkinConfig _skillSkinConfig, BattleObject _caster, HB427_tagSCUseSkill _tagUseSkillAttack)
+        : base(_skillBase, _skillConfig, _skillSkinConfig, _caster, _tagUseSkillAttack)
     {
 
     }
@@ -22,10 +22,18 @@
     public override void Play(Action<int, List<HB427_tagSCUseSkill.tagSCUseSkillHurt>> _onHit)
     {
         onHit = _onHit;
-        if (skillConfig.TriggerEffect > 0)
+        for (int i = 0; i < tagUseSkillAttack.HurtList.Length; i++)
         {
-            caster.battleField.battleEffectMgr.PlayEffect(caster, skillConfig.TriggerEffect, caster.heroRectTrans, caster.Camp);
+            var hurtInfo = tagUseSkillAttack.HurtList[i];
+            var target = caster.battleField.battleObjMgr.GetBattleObject((int)hurtInfo.ObjID);
+            if (target == null)
+            {
+                Debug.LogError($"DotSkillEffect 鎵句笉鍒扮洰鏍囷紝GUID={hurtInfo.ObjID}");
+                continue;
+            }
+            target.battleField.battleEffectMgr.PlayEffect(caster, skillSkinConfig.TriggerEffect, target.GetRectTransform(), caster.Camp, target.GetModelScale());
         }
+
         onHit?.Invoke(0, tagUseSkillAttack.HurtList.ToList());
         isFinish = true;
     }

--
Gitblit v1.8.0