From 07aee5604f365541c165f02bfe5437f1ed296fb5 Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期四, 05 六月 2025 22:13:20 +0800 Subject: [PATCH] 0015 卡牌服务端搭建 - 前期登录流程 --- Main/Utility/TimeUtility.cs | 128 +++++++++++++++++++----------------------- 1 files changed, 58 insertions(+), 70 deletions(-) diff --git a/Main/Utility/TimeUtility.cs b/Main/Utility/TimeUtility.cs index b1bcaad..734e4b9 100644 --- a/Main/Utility/TimeUtility.cs +++ b/Main/Utility/TimeUtility.cs @@ -24,8 +24,7 @@ } } - ////A0 04 鍚屾瀹㈡埛绔椂闂� #tagServerDateTime 涓殑 CrossServerTime 涓虹帺瀹跺湪瀛愭湇涓敹鍒扮殑璺ㄦ湇鏃堕棿 - //CrossServerNow涓虹帺瀹剁櫥褰曞湪璺ㄦ湇鏈嶅姟鍣ㄩ噷鐨勯�氱煡鏃堕棿, 涓嶪LTimeUtility.ServerCrossNow锛堢帺瀹跺湪瀛愭湇鏀跺埌璺ㄦ湇鐨勬椂闂撮�氱煡锛変笉鍚� + //A0 04 鍚屾瀹㈡埛绔椂闂� #tagServerDateTime 涓殑 CrossServerTime 涓虹帺瀹跺湪瀛愭湇涓敹鍒扮殑璺ㄦ湇鏃堕棿 static DateTime s_CrossServerTime = DateTime.Now; static float _crossCheckTime = 0; public static DateTime CrossServerNow @@ -162,10 +161,7 @@ public static event Action OnCreateRoleTimeRefresh; // public static void OnRefreshCreateRoleTime(HA124_tagMCPlayerInfo _package) // { - // if (_package.socketType == ServerType.CrossSever) - // { - // return; - // } + // createRoleTime = Convert.ToDateTime(UIHelper.GetTime(_package.CreateRoleTime)); // createRoleTimeTail = new DateTime(createRoleTime.Year, createRoleTime.Month, createRoleTime.Day); @@ -176,72 +172,64 @@ // Debug.LogFormat("CreateRoleTime {0} CreateDays {1}", createRoleTimeTail, CreateDays); // } - public static event Action OnServerTimeRefresh; - // public static void OnRefreshServerTime(HA004_tagServerDateTime vNetData) - // { - // var dateTime = new DateTime(vNetData.Year, vNetData.Month, vNetData.Day, vNetData.Hour, vNetData.Minute, vNetData.Second); - // if (vNetData.socketType == ServerType.CrossSever) - // { - // s_CrossServerTime = dateTime; - // _crossCheckTime = Time.realtimeSinceStartup; - // } - // else - // { - // s_ServerTime = dateTime; - // _checkTime = Time.realtimeSinceStartup; - // if (OnServerTimeRefresh != null) - // { - // OnServerTimeRefresh(); - // } - // } + public static event Action OnServerTimeRefresh; + public static void OnRefreshServerTime(HA004_tagServerDateTime vNetData) + { + var dateTime = new DateTime(vNetData.Year, vNetData.Month, vNetData.Day, vNetData.Hour, vNetData.Minute, vNetData.Second); + + s_ServerTime = dateTime; + _checkTime = Time.realtimeSinceStartup; + if (OnServerTimeRefresh != null) + { + OnServerTimeRefresh(); + } + + s_CrossServerTime = Convert.ToDateTime(vNetData.CrossServerTime); + _crossCheckTime = Time.realtimeSinceStartup; + + TimeDownMgr.Instance.Begin(TimeDownMgr.CoolTimeType.SyncServerTime, 60, (float tick) => + { + SyncServerTime(); + }, 60); + } - // TimeDownMgr.Instance.Begin(TimeDownMgr.CoolTimeType.SyncServerTime, 60, (float tick) => - // { - // SyncServerTime(); - // }, 60); - // } + public static event Action OnServerOpenDayRefresh; + public static void OnRefreshServerOpenDay(HA005_tagOpenServerDay package) + { + { + OpenDay = package.Day; + IsMixServer = package.IsMixServer == 1; + MixOpenDay = package.MixDay; + openServerDayOfWeek = package.OpenWeekday == 7 ? DayOfWeek.Sunday : (DayOfWeek)package.OpenWeekday; + WeekOfYear = package.WeekOfYear; + } + + OnRefreshServerTime(new HA004_tagServerDateTime() + { + Year = package.NowYear, + Month = package.NowMonth, + Day = package.NowDay, + Hour = package.NowHour, + Minute = package.NowMinute, + Second = package.NowSecond, + MicSecond = package.NowMicSecond, + socketType = package.socketType, + }); + + + if (OnServerOpenDayRefresh != null) + { + OnServerOpenDayRefresh(); + } + } + + public static void SyncServerTime() + { + CA002_tagClientRequestServerTime pak = new CA002_tagClientRequestServerTime(); + GameNetSystem.Instance.SendInfo(pak); + + } - public static event Action OnServerOpenDayRefresh; - // public static void OnRefreshServerOpenDay(HA005_tagOpenServerDay package) - // { - // if (package.socketType != ServerType.CrossSever) - // { - // OpenDay = package.Day; - // IsMixServer = package.IsMixServer == 1; - // MixOpenDay = package.MixDay; - // openServerDayOfWeek = package.OpenWeekday == 7 ? DayOfWeek.Sunday : (DayOfWeek)package.OpenWeekday; - // WeekOfYear = package.WeekOfYear; - // } - - // OnRefreshServerTime(new HA004_tagServerDateTime() - // { - // Year = package.NowYear, - // Month = package.NowMonth, - // Day = package.NowDay, - // Hour = package.NowHour, - // Minute = package.NowMinute, - // Second = package.NowSecond, - // MicSecond = package.NowMicSecond, - // socketType = package.socketType, - // }); - - - // if (package.socketType != ServerType.CrossSever - // && OnServerOpenDayRefresh != null) - // { - // OnServerOpenDayRefresh(); - // } - // } - - // public static void SyncServerTime() - // { - // CA002_tagClientRequestServerTime pak = new CA002_tagClientRequestServerTime(); - // GameNetSystem.Instance.SendInfo(pak); - // if (GameNetSystem.Instance.crossServerSocketConnected) - // { - // GameNetSystem.Instance.SendToCrossServer(pak); - // } - // } /// <summary> /// 鏍规嵁鏈嶅姟鍣ㄤ笅鍙戠殑绉掓暟鑾峰彇鏃堕棿 /// </summary> -- Gitblit v1.8.0