From 45d3d873a7740886fa09f35c9fea2830f4563072 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期三, 11 二月 2026 11:04:37 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into h5version

---
 Main/Utility/TimeUtility.cs |   52 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 50 insertions(+), 2 deletions(-)

diff --git a/Main/Utility/TimeUtility.cs b/Main/Utility/TimeUtility.cs
index 709eb44..587220d 100644
--- a/Main/Utility/TimeUtility.cs
+++ b/Main/Utility/TimeUtility.cs
@@ -100,6 +100,15 @@
         }
     }
 
+    public static int AllSecondsCrossServer
+    {
+        get
+        {
+            TimeSpan t = CrossServerNow - OriginalTime;
+            return (int)t.TotalSeconds;
+        }
+    }
+
     //1骞翠腑鐨勭鍑犲懆锛屼互鏈嶅姟绔负鍑嗭紝python鍜宑#绠楀嚭鏉ヤ笉涓�鏍�
     public static int WeekOfYear
     {
@@ -184,8 +193,11 @@
             OnServerTimeRefresh();
         }
 
-        s_CrossServerTime = Convert.ToDateTime(vNetData.CrossServerTime);
-        _crossCheckTime = Time.realtimeSinceStartup;
+        if (!string.IsNullOrEmpty(vNetData.CrossServerTime))
+        {
+            s_CrossServerTime = Convert.ToDateTime(vNetData.CrossServerTime);
+            _crossCheckTime = Time.realtimeSinceStartup;
+        }
 
         TimeDownMgr.Instance.Begin(TimeDownMgr.CoolTimeType.SyncServerTime, 60, (float tick) =>
         {
@@ -538,4 +550,40 @@
     {
         return (int)(GetTodayEndTime() - ServerNow).TotalSeconds;
     }
+
+    #region 璺ㄦ湇鍜屾湰鏈嶅叕鐢ㄦ帴鍙�
+    //褰撴湁鐨勫姛鑳戒細浠庢湰鏈嶅姛鑳藉彉鎴愯法鏈嶅姛鑳界殑鏃跺�欑粺涓�鐢ㄨ繖浜涙帴鍙e鐞嗘椂闂�
+    //鍚勮嚜鐨勫姛鑳戒紶鑷繁鐨剒oneID
+
+    // 鑾峰彇褰撳墠鏃堕棿, 鍏細璺ㄥ尯鍓嶅彇鏈湇鏃堕棿锛岃法鏈嶅悗鍙栬法鏈嶆椂闂�
+    public static DateTime GetCommServerNow(int zoneID = 0)
+    {
+        if (zoneID == 0)
+        {
+            return ServerNow;
+        }
+        else
+        {
+            return CrossServerNow;
+        }
+    }
+
+    public static int GetCommServerTick(int zoneID = 0)
+    {
+        if (zoneID == 0)
+        {
+            return AllSeconds;
+        }
+        else
+        {
+            return AllSecondsCrossServer;
+        }
+    }
+
+    public static DateTime GetCommTodayEndTime(int zoneID = 0)
+    {
+        var now = GetCommServerNow(zoneID).AddDays(1);
+        return new DateTime(now.Year, now.Month, now.Day);
+    }
+    #endregion
 }

--
Gitblit v1.8.0