From 99d6c2d67d5dba70932f635f716697c638f9cbaf Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期一, 30 三月 2026 18:26:04 +0800
Subject: [PATCH] 406 【功能优化】属性查看优化 点击boss血条下buff区域显示buff详情
---
Main/System/Battle/SkillEffect/SkillEffect.cs | 64 ++++++++++++++++++++++++++++++-
1 files changed, 61 insertions(+), 3 deletions(-)
diff --git a/Main/System/Battle/SkillEffect/SkillEffect.cs b/Main/System/Battle/SkillEffect/SkillEffect.cs
index b6c41e1..3fecf16 100644
--- a/Main/System/Battle/SkillEffect/SkillEffect.cs
+++ b/Main/System/Battle/SkillEffect/SkillEffect.cs
@@ -4,13 +4,23 @@
public class SkillEffect
{
+ protected SkillBase skillBase;
protected SkillConfig skillConfig;
+ protected SkillSkinConfig skillSkinConfig;
protected BattleObject caster;
protected HB427_tagSCUseSkill tagUseSkillAttack;// 鐩爣鍒楄〃
- public SkillEffect(SkillConfig _skillConfig, BattleObject _caster, HB427_tagSCUseSkill _tagUseSkillAttack)
+ protected bool isFinish = false;
+
+ protected bool isFinishFrameEnd = false;
+
+ protected Action<int, List<HB427_tagSCUseSkill.tagSCUseSkillHurt>> onHit;
+
+ public SkillEffect(SkillBase _skillBase, SkillConfig _skillConfig, SkillSkinConfig _skillSkinConfig, BattleObject _caster, HB427_tagSCUseSkill _tagUseSkillAttack)
{
+ skillBase = _skillBase;
skillConfig = _skillConfig;
+ skillSkinConfig = _skillSkinConfig;
caster = _caster;
tagUseSkillAttack = _tagUseSkillAttack;
}
@@ -18,11 +28,59 @@
//
public virtual void Play(Action<int, List<HB427_tagSCUseSkill.tagSCUseSkillHurt>> _onHit)
{
-
- }
+ onHit = _onHit;
+ if (skillSkinConfig.EffectId > 0)
+ {
+ caster.battleField.battleEffectMgr.PlayEffect(caster, skillSkinConfig.EffectId, caster.GetRectTransform(), caster.Camp, caster.GetModelScale());
+ }
+ if (skillSkinConfig.EffectId2 > 0)
+ {
+ caster.battleField.battleEffectMgr.PlayEffect(caster, skillSkinConfig.EffectId2, caster.GetRectTransform(), caster.Camp, caster.GetModelScale());
+ }
+ }
public virtual void Run()
{
}
+
+ public virtual void OnMiddleFrameEnd(int times, int hitIndex)
+ {
+
+ }
+
+ public virtual void OnMiddleFrameStart(int times)
+ {
+ if (skillSkinConfig.MStartEffectId <= 0)
+ return;
+ // 涓憞鍥哄畾鐗规晥
+ caster.battleField.battleEffectMgr.PlayEffect(caster, skillSkinConfig.MStartEffectId, caster.GetTransform(), caster.Camp, caster.GetModelScale());
+ }
+
+ /// <summary>
+ /// 鍚庢憞寮�濮�
+ /// </summary>
+ public virtual void OnFinalFrameStart()
+ {
+
+ }
+
+ /// <summary>
+ /// 鍚庢憞缁撴潫
+ /// </summary>
+ public virtual void OnFinalFrameEnd()
+ {
+ isFinishFrameEnd = true;
+ }
+
+ public virtual bool IsFinished()
+ {
+ return isFinish && isFinishFrameEnd;
+ }
+
+ public virtual void ForceFinished()
+ {
+ isFinish = true;
+ isFinishFrameEnd = true;
+ }
}
\ No newline at end of file
--
Gitblit v1.8.0