From 24e7aad4b1ebc17deadb40f3052fbf1ed4af235a Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期二, 28 四月 2026 18:12:02 +0800
Subject: [PATCH] 0312 群英跨服优化

---
 Main/System/Qunying/QYWin.cs           |    3 +--
 Main/System/BillboardRank/RankModel.cs |    2 +-
 Main/System/Qunying/QYFighterCell.cs   |   19 ++++++++++++++++++-
 Main/System/Qunying/QunyingManager.cs  |   11 +++++++++++
 4 files changed, 31 insertions(+), 4 deletions(-)

diff --git a/Main/System/BillboardRank/RankModel.cs b/Main/System/BillboardRank/RankModel.cs
index c2a920e..b9b99f0 100644
--- a/Main/System/BillboardRank/RankModel.cs
+++ b/Main/System/BillboardRank/RankModel.cs
@@ -117,7 +117,7 @@
 
         var pak = new CA130_tagCMViewBillboard();
         pak.Type = (byte)type;
-        pak.GroupValue1 = (byte)groupValue1;
+        pak.GroupValue1 = (uint)groupValue1;
         pak.GroupValue2 = (uint)groupValue2;
         pak.StartIndex = (ushort)startIndex;  //鎺掑悕浠�0寮�濮�
         pak.ViewCnt = (byte)count;
diff --git a/Main/System/Qunying/QYFighterCell.cs b/Main/System/Qunying/QYFighterCell.cs
index 026bec5..4e0316d 100644
--- a/Main/System/Qunying/QYFighterCell.cs
+++ b/Main/System/Qunying/QYFighterCell.cs
@@ -30,6 +30,12 @@
         {
             if (matchInfo == null)
                 return;
+
+            if (QunyingManager.Instance.IsCrossGrouping())
+            {
+                SysNotifyMgr.Instance.ShowTip("QYCrossFightError");
+                return;
+            }
             if (!UIHelper.CheckMoneyCount(QunyingManager.challengeMoneyType, 1, 1))
             {
                 StoreModel.Instance.ShowBuyItem(QunyingManager.challengeShopID, -1);
@@ -50,6 +56,12 @@
         {
             if (matchInfo == null)
                 return;
+            if (QunyingManager.Instance.IsCrossGrouping())
+            {
+                SysNotifyMgr.Instance.ShowTip("QYCrossFightError");
+                return;
+            }
+
             if (!UIHelper.CheckMoneyCount(QunyingManager.challengeMoneyType, 1, 1))
             {
                 StoreModel.Instance.ShowBuyItem(QunyingManager.challengeShopID, -1);
@@ -63,7 +75,12 @@
         {
             if (matchInfo == null)
                 return;
-
+                
+            if (QunyingManager.Instance.IsCrossGrouping())
+            {
+                SysNotifyMgr.Instance.ShowTip("QYCrossFightError");
+                return;
+            }
             //鏈�浣庢樉绀轰袱娆★紝浣嗗彲浠ユ渶浣庢寫鎴�1娆�
             var cnt = Math.Max(1, Math.Min(5, UIHelper.GetMoneyCnt(QunyingManager.challengeMoneyType)));
             if (!UIHelper.CheckMoneyCount(QunyingManager.challengeMoneyType, cnt, 1))
diff --git a/Main/System/Qunying/QYWin.cs b/Main/System/Qunying/QYWin.cs
index 2466dd8..3dec27f 100644
--- a/Main/System/Qunying/QYWin.cs
+++ b/Main/System/Qunying/QYWin.cs
@@ -171,8 +171,7 @@
     //娲诲姩鏃堕棿
     void ShowGameTime()
     {
-        var zoneInfo = CrossServerBaseManager.Instance.GetCrossZoneInfo(QunyingManager.DataMapID);
-        if (zoneInfo != null && zoneInfo.ZoneID == 0)
+        if (QunyingManager.Instance.IsCrossGrouping())
         {
             //鍊掕鏃舵寜0:05缁撴潫
             var seconds = (TimeUtility.GetTodayStartTime().AddMinutes(5) - TimeUtility.GetCommServerNow(0)).TotalSeconds;
diff --git a/Main/System/Qunying/QunyingManager.cs b/Main/System/Qunying/QunyingManager.cs
index ba61409..51b86f5 100644
--- a/Main/System/Qunying/QunyingManager.cs
+++ b/Main/System/Qunying/QunyingManager.cs
@@ -379,6 +379,17 @@
         return true;
     }
 
+
+    public bool IsCrossGrouping()
+    {
+        var zoneInfo = CrossServerBaseManager.Instance.GetCrossZoneInfo(DataMapID);
+        if (zoneInfo != null && zoneInfo.ZoneID == 0)
+        {
+            return true;
+        }
+        return false;
+    }
+
     #region 绾㈢偣
 
     public Redpoint parentRedpoint = new Redpoint(MainRedDot.Qunying);

--
Gitblit v1.8.0