From 8a2d52c24c60af2bf6e3968e8dde9ddcb5ccffba Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期三, 12 十一月 2025 17:17:29 +0800
Subject: [PATCH] 0312 战报约定第一个包是B424,先发过来的过滤报错通知

---
 Main/System/Battle/BattleObject/BattleObject.cs |   38 +++++++++++++++++++++++++-------------
 1 files changed, 25 insertions(+), 13 deletions(-)

diff --git a/Main/System/Battle/BattleObject/BattleObject.cs b/Main/System/Battle/BattleObject/BattleObject.cs
index 266ee05..723bb12 100644
--- a/Main/System/Battle/BattleObject/BattleObject.cs
+++ b/Main/System/Battle/BattleObject/BattleObject.cs
@@ -101,8 +101,15 @@
         var heroInfoBarScale = heroInfoBar.transform.localScale;
         heroInfoBarScale.x *= Camp == BattleCamp.Red ? 1 : -1;
         heroInfoBar.transform.localScale = heroInfoBarScale;
-
-        heroInfoBar.SetActive(true);
+        if (battleField is StoryBattleField && (battleField as StoryBattleField).battleState == StoryBattleState.Break)
+        {
+            //涓荤嚎鍏冲崱浼戞伅涓殑涓嶆樉绀鸿鏉�
+            heroInfoBar.SetActive(false);
+        }
+        else
+        {
+            heroInfoBar.SetActive(true);
+        }
         SetFront();
     }
 
@@ -162,20 +169,20 @@
 
     public void OnObjInfoRefresh(H0418_tagObjInfoRefresh _refreshInfo)
     {
-        // 澶╁瓙鐨勬寫鎴樻嫤鎴鏉¢�昏緫
+        // 澶╁瓙鐨勬寫鎴樻嫤鎴鏉�,涓嶆嫤鎴�掓皵
         BattleObject boss = battleField.FindBoss();
-        if (boss != null && battleField.MapID == 30020 && boss.ObjID == _refreshInfo.ObjID)
+        if (boss != null && battleField.MapID == 30020 && boss.ObjID == _refreshInfo.ObjID && _refreshInfo.RefreshType != (ushort)PlayerDataType.XP)
             return;
         switch ((PlayerDataType)_refreshInfo.RefreshType)
         {
             case PlayerDataType.HP:
                 long toHp = GeneralDefine.GetFactValue(_refreshInfo.Value, _refreshInfo.ValueEx);
-                heroInfoBar.UpdateHP(teamHero.curHp, toHp, teamHero.maxHp);
+                heroInfoBar.UpdateHP(teamHero.curHp, toHp, teamHero.maxHp, false);
                 teamHero.curHp = GeneralDefine.GetFactValue(_refreshInfo.Value, _refreshInfo.ValueEx);
                 break;
             case PlayerDataType.MaxHP:
                 teamHero.maxHp = GeneralDefine.GetFactValue(_refreshInfo.Value, _refreshInfo.ValueEx);
-                heroInfoBar.UpdateHP(teamHero.curHp, teamHero.curHp, teamHero.maxHp);
+                heroInfoBar.UpdateHP(teamHero.curHp, teamHero.curHp, teamHero.maxHp, false);
                 break;
             case PlayerDataType.XP:
                 long toXp = GeneralDefine.GetFactValue(_refreshInfo.Value, _refreshInfo.ValueEx);
@@ -190,20 +197,20 @@
 
     public void ObjPropertyRefreshView(HB418_tagSCObjPropertyRefreshView vNetData)
     {
-        // 澶╁瓙鐨勬寫鎴樻嫤鎴鏉¢�昏緫
+        // 澶╁瓙鐨勬寫鎴樻嫤鎴鏉�,涓嶆嫤鎴�掓皵
         BattleObject boss = battleField.FindBoss();
-        if (boss != null && battleField.MapID == 30020 && boss.ObjID == vNetData.ObjID)
+        if (boss != null && battleField.MapID == 30020 && boss.ObjID == vNetData.ObjID && vNetData.RefreshType != (ushort)PlayerDataType.XP)
             return;
         switch ((PlayerDataType)vNetData.RefreshType)
         {
             case PlayerDataType.HP:
                 long toHp = GeneralDefine.GetFactValue(vNetData.Value, vNetData.ValueEx);
-                heroInfoBar.UpdateHP(teamHero.curHp, toHp, teamHero.maxHp);
+                heroInfoBar.UpdateHP(teamHero.curHp, toHp, teamHero.maxHp, false);
                 teamHero.curHp = GeneralDefine.GetFactValue(vNetData.Value, vNetData.ValueEx);
                 break;
             case PlayerDataType.MaxHP:
                 teamHero.maxHp = GeneralDefine.GetFactValue(vNetData.Value, vNetData.ValueEx);
-                heroInfoBar.UpdateHP(teamHero.curHp, teamHero.curHp, teamHero.maxHp);
+                heroInfoBar.UpdateHP(teamHero.curHp, teamHero.curHp, teamHero.maxHp, false);
                 break;
             case PlayerDataType.XP:
                 long toXp = GeneralDefine.GetFactValue(vNetData.Value, vNetData.ValueEx);
@@ -365,6 +372,12 @@
 
         motionBase.ShowIllusionShadow(true);
 
+        DamageNumConfig damageNumConfig = DamageNumConfig.Get((int)DamageType.Dodge);
+
+        string dodgeStr = ((char)damageNumConfig.prefix).ToString();
+
+        heroInfoBar.ShowTips(dodgeStr, true, false);
+
         tween.onComplete += () =>
         {
             motionBase.ShowIllusionShadow(false);
@@ -428,8 +441,7 @@
         }
         else
         {
-            // 浣跨敤浼犲叆鐨� fromHp 鍜� toHp 鏇存柊琛�鏉℃樉绀�
-            heroInfoBar.UpdateHP(battleHurtParam.fromHp, battleHurtParam.toHp, teamHero.maxHp);
+            heroInfoBar.UpdateDamage(battleDmgInfo);
 
             // YYL TODO 鏄惁闇�瑕佹寕鍦ㄥ湪鑷韩鐨刦ollow鐐逛笂
             EventBroadcast.Instance.Broadcast(EventName.BATTLE_DAMAGE_TAKEN, battleDmgInfo);
@@ -473,7 +485,7 @@
 
     public void PerformDrop()
     {
-        if (null == m_battleDrops || m_battleDrops.dropItemPackIndex.Count == 0)
+        if (null == m_battleDrops)
             return;
 
         EventBroadcast.Instance.Broadcast<string, BattleDrops, Action>(

--
Gitblit v1.8.0