From 2dd1841d03a730d3d369092c2a3ad656cee4bf64 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期四, 07 五月 2026 15:11:38 +0800
Subject: [PATCH] 512 跨服演武场

---
 Main/System/Arena/ArenaPlayerRankCell.cs |   26 ++++++++++++++++++++++++--
 1 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/Main/System/Arena/ArenaPlayerRankCell.cs b/Main/System/Arena/ArenaPlayerRankCell.cs
index d4f1d64..760ec17 100644
--- a/Main/System/Arena/ArenaPlayerRankCell.cs
+++ b/Main/System/Arena/ArenaPlayerRankCell.cs
@@ -7,12 +7,23 @@
     [SerializeField] Text rankText;
     [SerializeField] Text rankValueText;    //鎺掑悕姣旇緝鍐呭
     [SerializeField] Text nameText;
+    [SerializeField] Text serverText;
     [SerializeField] OfficialTitleCell officialTitleCell;
     [SerializeField] Button queryPlayerBtn; //鍚庣画娣诲姞鐐瑰嚮鏌ョ湅鐜╁璇︽儏
 
 
     // rank 涓�0 浠h〃鐜╁鑷繁
     public void Display(int rankType, int rank, string valueFormat)
+    {
+        DisplayCross(rankType, rank, valueFormat, false);
+    }
+
+    public void DisplayCross(int rankType, int rank, string valueFormat)
+    {
+        DisplayCross(rankType, rank, valueFormat, true);
+    }
+
+    void DisplayCross(int rankType, int rank, string valueFormat, bool isCross)
     {
         RankData rankData = null;
         int viewPlayerId = (int)PlayerDatas.Instance.baseData.PlayerID;
@@ -43,6 +54,8 @@
             avatarCell.SetActive(false);
             nameText.text = Language.Get("L1124");
             rankValueText.text = "0";//Language.Get("L1125");
+            if (serverText != null)
+                serverText.text = "";
         }
         else
         {
@@ -51,9 +64,17 @@
             officialTitleCell.InitUI((int)rankData.value1, (int)rankData.value2);
             avatarCell.SetActive(true);
             avatarCell.InitUI(AvatarHelper.GetAvatarModel((int)rankData.id, (int)rankData.value3, (int)rankData.value4));
+
+            // 璺ㄦ湇鏄剧ず鏈嶅姟鍣ㄥ悕绉�
+            if (isCross && serverText != null)
+            {
+                serverText.text = ServerListCenter.Instance.GetServerName(UIHelper.GetServerIDByAccount(rankData.name2));
+            }
+
             avatarCell.SetListener(() =>
             {
-                AvatarHelper.TryViewOtherPlayerInfo((int)rankData.id, viewPlayerLineupType: (int)BattlePreSetType.Arena);
+                int serverID = (ArenaManager.Instance.IsOpenCrossServer() && rankData.id != PlayerDatas.Instance.baseData.PlayerID) ? UIHelper.GetServerIDByAccount(rankData.name2) : 0;
+                AvatarHelper.TryViewOtherPlayerInfo((int)rankData.id, serverID, viewPlayerLineupType: (int)BattlePreSetType.Arena);
             });
             nameText.text = rankData.name1;
             rankValueText.text = string.Format(valueFormat, UIHelper.ReplaceLargeNum(rankData.cmpValue));
@@ -64,7 +85,8 @@
         {
             queryPlayerBtn.AddListener(() =>
             {
-                AvatarHelper.TryViewOtherPlayerInfo(viewPlayerId, viewPlayerLineupType: (int)BattlePreSetType.Arena);
+                int serverID = (ArenaManager.Instance.IsOpenCrossServer() && viewPlayerId != PlayerDatas.Instance.baseData.PlayerID) ? UIHelper.GetServerIDByAccount(rankData.name2) : 0;
+                AvatarHelper.TryViewOtherPlayerInfo(viewPlayerId, serverID, viewPlayerLineupType: (int)BattlePreSetType.Arena);
             });
         }
     }

--
Gitblit v1.8.0