From c6a7ac3739907e8bb7c751d408e227e19f246f49 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期五, 08 五月 2026 17:27:31 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into h5version

---
 Main/System/Arena/ArenaRecordCell.cs |   50 +++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 41 insertions(+), 9 deletions(-)

diff --git a/Main/System/Arena/ArenaRecordCell.cs b/Main/System/Arena/ArenaRecordCell.cs
index 9484c25..f1e817b 100644
--- a/Main/System/Arena/ArenaRecordCell.cs
+++ b/Main/System/Arena/ArenaRecordCell.cs
@@ -1,5 +1,4 @@
 using System.Collections.Generic;
-using Cysharp.Threading.Tasks;
 using UnityEngine;
 using System;
 
@@ -8,6 +7,8 @@
     [SerializeField] AvatarCell avatarCell;
     [SerializeField] TextEx txtName;
     [SerializeField] TextEx txtDate;
+    [SerializeField] TextEx txtCrossDate;
+    [SerializeField] TextEx txtServerName;
     [SerializeField] TextEx txtFightPoint;
     [SerializeField] TextEx txtState;
     [SerializeField] TextEx txtAdd;
@@ -38,7 +39,40 @@
             return;
         arenaGameRec = sortedList[index];
         imgType.SetSprite(arenaGameRec.Value2 == 1 ? "ArenaRecordTypeAtk" : "ArenaRecordTypeDef");
-        txtDate.text = FormatTime(arenaGameRec.Time);
+        
+        // 璺ㄦ湇璁板綍鏍峰紡鏄剧ず閫昏緫
+        if (ArenaManager.Instance.IsOpenCrossServer())
+        {
+            // 璺ㄦ湇鏍峰紡锛歵xtDate闅愯棌锛宼xtCrossDate鍜宼xtServerName鏄剧ず
+            txtDate.SetActive(false);
+            txtCrossDate.SetActive(true);
+            txtServerName.SetActive(true);
+            
+            if (arenaGameRec.Cross == 1)
+            {
+                // 璺ㄦ湇璁板綍锛氭樉绀鸿法鏈嶆椂闂村拰璺ㄦ湇鏈嶅姟鍣�
+                txtCrossDate.text = FormatTime(arenaGameRec.Time);
+                if (ArenaManager.Instance.IsRobot((int)arenaGameRec.Value3))
+                    txtServerName.text = ServerListCenter.Instance.GetServerName(UIHelper.GetServerIDByAccount(PlayerDatas.Instance.baseData.AccID));
+                else
+                    txtServerName.text = ServerListCenter.Instance.GetServerName((int)arenaGameRec.ServerID);
+            }
+            else
+            {
+                // 鏈湇璁板綍锛氭樉绀烘湰鏈嶆椂闂村拰鏈湇鏈嶅姟鍣�
+                txtCrossDate.text = FormatTime(arenaGameRec.Time);
+                txtServerName.text = ServerListCenter.Instance.GetServerName(UIHelper.GetServerIDByAccount(PlayerDatas.Instance.baseData.AccID));
+            }
+        }
+        else
+        {
+            // 姝e父鏍峰紡锛歵xtDate鏄剧ず锛宼xtCrossDate鍜宼xtServerName闅愯棌
+            txtDate.SetActive(true);
+            txtDate.text = FormatTime(arenaGameRec.Time);
+            txtCrossDate.SetActive(false);
+            txtServerName.SetActive(false);
+        }
+        
         // true 宸插け鏁� false 鏈け鏁�
         bool isTimeInvalid = ArenaManager.Instance.IsTimeInvalid(arenaGameRec.Time);
         // 鍙戣捣鏀诲嚮,鎵撹耽鏈夌Н鍒�,鎵撹緭娌℃湁
@@ -65,17 +99,15 @@
             }
 
         }
-        avatarCell.InitUI(AvatarHelper.GetAvatarModel((int)arenaGameRec.Value3, (int)arenaGameRec.Value5, (int)arenaGameRec.Value6)).Forget();
-        avatarCell.SetOnLoaded(() =>
+        avatarCell.InitUI(AvatarHelper.GetAvatarModel((int)arenaGameRec.Value3, (int)arenaGameRec.Value5, (int)arenaGameRec.Value6));
+        avatarCell.SetListener(() =>
         {
-            avatarCell.SetListener(() =>
-            {
-                AvatarHelper.TryViewOtherPlayerInfo((int)arenaGameRec.Value3, viewPlayerLineupType: (int)BattlePreSetType.Arena);
-            });
+            int serverID = (ArenaManager.Instance.IsOpenCrossServer() && arenaGameRec.Value3 != PlayerDatas.Instance.baseData.PlayerID) ? (int)arenaGameRec.ServerID : 0;
+            AvatarHelper.TryViewOtherPlayerInfo((int)arenaGameRec.Value3, serverID, viewPlayerLineupType: (int)BattlePreSetType.Arena);
         });
         txtName.text = arenaGameRec.Name;
         txtFightPoint.text = UIHelper.ReplaceLargeArtNum(arenaGameRec.FightPower);
-        officialTitleCell.InitUI(PlayerDatas.Instance.baseData.realmLevel, PlayerDatas.Instance.baseData.TitleID, 0.55f).Forget();
+        officialTitleCell.InitUI(PlayerDatas.Instance.baseData.realmLevel, PlayerDatas.Instance.baseData.TitleID, 0.55f);
         imgMoneyIcon.SetIconWithMoneyType(ArenaManager.Instance.ChallengeMoneyType);
         txtNeedCount.text = ArenaManager.Instance.NeedChallengeMoneyCnt.ToString();
     }

--
Gitblit v1.8.0