From d1d7db670b09a507cb73f71f99d2ca22c96307a5 Mon Sep 17 00:00:00 2001 From: yyl <yyl> Date: 星期二, 30 九月 2025 18:34:12 +0800 Subject: [PATCH] 125 战斗 1.治疗问题 2.死亡时受击不播放 --- Main/System/Battle/BattleObject/BattleObject.cs | 16 ++++++++++------ 1 files changed, 10 insertions(+), 6 deletions(-) diff --git a/Main/System/Battle/BattleObject/BattleObject.cs b/Main/System/Battle/BattleObject/BattleObject.cs index d3b7bdd..ba47e96 100644 --- a/Main/System/Battle/BattleObject/BattleObject.cs +++ b/Main/System/Battle/BattleObject/BattleObject.cs @@ -268,11 +268,11 @@ return true; } - public virtual void Hurt(List<long> damageValues, long _totalDamage, HB427_tagSCUseSkill.tagSCUseSkillHurt hurt, SkillConfig skillConfig) + public virtual void Hurt(List<long> damageValues, long _totalDamage, HB427_tagSCUseSkill.tagSCUseSkillHurt hurt, SkillConfig skillConfig, bool playAnimation = true) { BattleDmgInfo dmgInfo = PopDamage(damageValues, _totalDamage, hurt, skillConfig); - if (dmgInfo.IsType(DamageType.Damage) || dmgInfo.IsRealdamage()) + if ((dmgInfo.IsType(DamageType.Damage) || dmgInfo.IsRealdamage()) && playAnimation) { motionBase.PlayAnimation(MotionName.hit, false); } @@ -280,12 +280,12 @@ public void SuckHp(uint suckHP, SkillConfig skillConfig) { - + teamHero.curHp = Math.Min(teamHero.maxHp, teamHero.curHp + (int)suckHP); } public void HurtByReflect(uint bounceHP, SkillConfig skillConfig) { - + teamHero.curHp = Math.Max(0, teamHero.curHp - (int)bounceHP); } // 闂伩寮�濮� @@ -360,8 +360,12 @@ currentHurtHp += (int)damageValues[i]; } - heroInfoBar.UpdateHP(teamHero.curHp, Math.Max(0, teamHero.curHp - currentHurtHp), teamHero.maxHp); - teamHero.curHp = Math.Max(0, teamHero.curHp - currentHurtHp); + bool isRecovery = battleDmgInfo.IsType(DamageType.Recovery); + + long toHp = Math.Max(0, teamHero.curHp + (isRecovery ? currentHurtHp : -currentHurtHp)); + + heroInfoBar.UpdateHP(teamHero.curHp, toHp, teamHero.maxHp); + teamHero.curHp = toHp; // YYL TODO 鏄惁闇�瑕佹寕鍦ㄥ湪鑷韩鐨刦ollow鐐逛笂 EventBroadcast.Instance.Broadcast(EventName.BATTLE_DAMAGE_TAKEN, battleDmgInfo); -- Gitblit v1.8.0