| | |
| | | } |
| | | } |
| | | |
| | | ////A0 04 同步客户端时间 #tagServerDateTime 中的 CrossServerTime 为玩家在子服中收到的跨服时间 |
| | | //CrossServerNow为玩家登录在跨服服务器里的通知时间, 与ILTimeUtility.ServerCrossNow(玩家在子服收到跨服的时间通知)不同 |
| | | //A0 04 同步客户端时间 #tagServerDateTime 中的 CrossServerTime 为玩家在子服中收到的跨服时间 |
| | | static DateTime s_CrossServerTime = DateTime.Now; |
| | | static float _crossCheckTime = 0; |
| | | public static DateTime CrossServerNow |
| | |
| | | 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); |
| | |
| | | // 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> |