From f236bbc6384c1f4b5a16739e4124ab832090ddc3 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期一, 15 十二月 2025 11:21:30 +0800
Subject: [PATCH] 125 战斗 新增死亡触发技能支持
---
Main/System/Battle/BattleObject/BattleObject.cs | 33 +++++++++++++++++++++++----------
1 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/Main/System/Battle/BattleObject/BattleObject.cs b/Main/System/Battle/BattleObject/BattleObject.cs
index 0c0377d..41176c9 100644
--- a/Main/System/Battle/BattleObject/BattleObject.cs
+++ b/Main/System/Battle/BattleObject/BattleObject.cs
@@ -344,7 +344,7 @@
{
PushDropItems(battleHurtParam.battleDrops);
}
- battleField.OnObjsDead(new List<HB422_tagMCTurnFightObjDead>() { battleHurtParam.deadPack });
+ battleField.OnObjsDead(new List<BattleDeadPack>() { battleHurtParam.deadPack });
}
else
@@ -436,15 +436,23 @@
battleField.battleTweenMgr.OnPlayTween(tween);
}
- public virtual void OnDeath(Action _onDeathAnimationComplete)
+ public virtual void OnDeath(Action _onDeathAnimationComplete, bool withoutAnime = false)
{
buffMgr.RemoveAllBuff();
battleField.soundManager.PlayEffectSound(teamHero.heroConfig.DeathSFX, false);
- motionBase.PlayDeadAnimation(() =>
+ if (withoutAnime)
{
SetDeath();
_onDeathAnimationComplete?.Invoke();
- });
+ }
+ else
+ {
+ motionBase.PlayDeadAnimation(() =>
+ {
+ SetDeath();
+ _onDeathAnimationComplete?.Invoke();
+ });
+ }
}
public void SetDeath()
@@ -465,13 +473,18 @@
public void OnReborn(HB427_tagSCUseSkill.tagSCUseSkillHurt vNetData)
{
// 澶勭悊澶嶆椿閫昏緫
- battleField.OnObjReborn((uint)ObjID);
+ RebornRecordAction recordAction = new RebornRecordAction(battleField, this, () =>
+ {
+ battleField.OnObjReborn((uint)ObjID);
- teamHero.curHp = GeneralDefine.GetFactValue(vNetData.CurHP, vNetData.CurHPEx);
- // Debug.LogError("OnReborn " + teamHero.curHp);
- teamHero.isDead = false;
- heroGo.SetActive(true);
- motionBase.ResetForReborn();
+ teamHero.curHp = GeneralDefine.GetFactValue(vNetData.CurHP, vNetData.CurHPEx);
+ heroRectTrans.anchoredPosition = Vector2.zero;
+ // Debug.LogError("OnReborn " + teamHero.curHp);
+ teamHero.isDead = false;
+ heroGo.SetActive(true);
+ motionBase.ResetForReborn();
+ });
+ battleField.recordPlayer.InsertRecord(recordAction);
}
// 浼ゅ杩樿鐪� 鏄惁闂伩 鏆村嚮 and so on 闇�瑕佹湁涓�涓狣amageType 鏈嶅姟鍣ㄥ簲璇ヤ細缁�
--
Gitblit v1.8.0